placement-new

placement-new

文章 0 浏览 2

覆盖 new 但告诉 unordered_map 不要使用它

我正在为 C/C++ 编写一个垃圾收集器作为编程练习,其中一部分涉及全局重写 new。然而,垃圾收集器还使用一个unordered_map(来存储指向已分配块的指针…

朕就是辣么酷 2024-10-08 05:26:59 1 0

调用析构函数方法比较

我只是想知道这三种调用析构函数的方法是否有任何显着/严重的差异。考虑以下代码。另请考虑 main() 中提到的两种情况。 class Sample { public: ~Samp…

北凤男飞 2024-10-07 10:47:32 1 0

在从放置 new 获得的指针上使用运算符删除的合法性

我确信这段代码应该是非法的,因为它显然不起作用,但它似乎是 C++0x FCD 允许的。 class X { /* ... */} void* raw = malloc(sizeof (X)) X* p = new…

冷情 2024-10-07 01:00:19 0 0

销毁对象后未调用析构函数放置新的

我不知道为什么这不起作用。以下Function是通过placement new创建的。提供了一个函数来检查它是否应该被破坏,如果是,则手动调用其析构函数。 这是测…

美男兮 2024-10-07 00:23:46 0 0

Placement-new 与 gcc 4.4.3 严格别名规则

我有一些代码,多年来我一直成功地使用它们来实现“变体类型对象”;也就是说,一个 C++ 对象可以保存各种类型的值,但仅使用(大约)尽可能多的可能…

时光沙漏 2024-10-04 06:06:08 0 0

C++ 中的简单存储类和严格的别名

我有以下代码用于存储一个小类。 #include &ltiostream&gt template&lttypename T&gt class storage { private: struct destroy { T&amp m_t destroy(…

蓝礼 2024-10-02 08:49:29 0 0

安置新 +数组对齐

SomeObj&ltunsigned int&gt* Buffer char* BufferPtr = MemoryManager::giveMeSomeBytes(resX*resY*sizeof(SomeObj&ltunsigned int&gt)) Buffer = new…

巷雨优美回忆 2024-09-29 09:40:54 0 0

这第二个新的是什么?

第二行是什么? (在回答另一个问题时看到。) int * x = new int [1] int * y = new (x) int 第二行之后 x 和 y 具有相同的值(指向相同的位置)。 …

浅浅淡淡 2024-09-28 03:29:03 3 0

C++ 中的段错误对在预分配缓冲区中创建的对象调用虚拟方法

嗯...标题有点拗口,但我真的不确定哪一部分引起了问题,我已经运行了很多次,并且无法查明为什么... 这个想法是使单个 Choice 实例能够存储任何一个…

弥繁 2024-09-26 05:49:09 1 0

C++ 中的就地构造函数是什么?

C++ 中的就地构造函数是什么? 例如Datatype *x = new(y) Datatype()…

葮薆情 2024-09-24 12:44:14 1 0

Malloc 和构造函数

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

坏尐絯 2024-09-04 06:24:10 8 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 4 0

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

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

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

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

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

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

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

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

策马西风 2024-08-26 15:31:32 4 0
更多

推荐作者

lioqio

文章 0 评论 0

Single

文章 0 评论 0

禾厶谷欠

文章 0 评论 0

alipaysp_2zg8elfGgC

文章 0 评论 0

qq_N6d4X7

文章 0 评论 0

放低过去

文章 0 评论 0

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