placement-new

placement-new

文章 0 浏览 3

Malloc 和构造函数

与 new 和 delete 表达式不同,std::malloc 在分配对象内存时不会调用构造函数。那么,我们如何创建一个对象,以便构造函数也被调用呢?…

坏尐絯 2024-09-04 06:24:10 13 0

安全放置新&显式析构函数调用

这是我的代码的示例: template &lttypename T&gt struct MyStruct { T object } template &lttypename T&gt class MyClass { MyStruct&ltT&gt* struc…

穿透光 2024-09-04 05:58:19 7 0

放置新的以推迟到不同的构造函数

这安全吗?我在实际实现中没有使用任何虚拟函数,但我很想相信即使我使用了,它仍然是安全的。 class Foo { Foo() { // initialize things } Foo( int…

超可爱的懒熊 2024-08-29 18:27:41 5 0

没有默认构造函数的类数组的运算符 new

对于没有默认构造函数的类,可以使用operator new和placement new来声明该类的数组。 当我阅读更有效的C++中的代码时,我发现代码如下(我修改了一些…

静赏你的温柔 2024-08-27 00:43:46 8 0

C++,是否可以直接调用构造函数,而不需要new?

如果我已经有对象的内存,我可以显式调用构造函数而不使用 new 吗? class Object1{ char *str public: Object1(char*str1){ str=strdup(str1) puts("…

策马西风 2024-08-26 15:31:32 5 0

使用new(this)重用构造函数

这是最近在我担任助教的班级中出现的。我们正在教学生如何在 c++ 中进行复制构造函数,而最初教 java 的学生问是否可以从一个构造函数调用另一个构造…

那片花海 2024-08-25 17:40:53 6 0

运算符重载(尤其是“新”)数量如何工作?

我从来没有完全理解运算符重载的参数列表是如何以系统的方式确定的,并且我现在对我现在遇到的问题感到特别困惑。 当您重载一元运算符时,它有一个参…

故人爱我别走 2024-08-21 13:04:06 7 0

从 void 指针缓冲区实例化结构体

这里有一些 C++ 代码,对我来说看起来很有趣,但我知道它是有效的。 定义了一个结构体,在程序中我们使用 void 指针分配内存。然后使用分配的缓冲区创…

却一份温柔 2024-08-15 13:48:21 6 0

如何在内存中连续分配可变大小的结构?

我正在使用 C++,并且具有以下结构: struct ArrayOfThese { int a int b } struct DataPoint { int a int b int c } 在内存中,我希望在每个 DataPoi…

梦亿 2024-08-09 20:11:13 6 0

如何使用模板中的放置删除/新建来重置类?

我有一个池管理器模板类。 当类对象被添加回池管理器时,我想将其重置回初始状态。 我想在其上调用放置析构函数和放置构造函数,以便下次池管理器给出…

感受沵的脚步 2024-07-12 11:36:56 7 0

可变大小的类 - C++

我见过一个类,它是这样定义的。 class StringChild : public StringBase { public: //some non-virtual functions static StringChild* CreateMe(int…

滿滿的愛 2024-07-12 01:02:58 8 0

C++ 有什么用途? 构建“新的展示位置”?

我刚刚了解了名为“placement new”的 C++ 结构。 它允许您精确控制指针在内存中指向的位置。 它看起来像这样:( #include &ltnew&gt // Must #inclu…

远山浅 2024-07-10 18:50:16 11 0
更多

推荐作者

留蓝

文章 0 评论 0

18790681156

文章 0 评论 0

zach7772

文章 0 评论 0

Wini

文章 0 评论 0

ayeshaaroy

文章 0 评论 0

初雪

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文