placement-new

placement-new

文章 0 浏览 3

通过放置 new 转移对象所有权

我有一个 Visual Studio 2008 C++ 项目,其中有一个管理无法复制的资源的类。我已经实现了按引用结构传递语义(ala std::auto_ptr)。 class Test str…

凤舞天涯 2024-11-07 19:02:25 0 0

STL 容器分配放置新

我找不到这个问题的确切答案,因此在这里发帖。 当我想到向量时,它需要在连续的内存位置构建对象。这意味着向量保持分配的内存,并且必须对推入其中…

千仐 2024-10-22 02:04:31 1 0

C++ 中放置 new VS 显式构造函数调用

最近我遇到了这两种在内存中特定位置创建对象的方法: 1. void* mem = malloc(sizeof(T)) T* obj = new(mem) T() 2. T* obj = (T*)malloc(sizeof(T)) …

初见 2024-10-21 16:54:32 1 0

在历史代码中不寻常地使用 new。这是什么意思?

我只是移植一些旧代码: #define NewArrayOnHeap(TYPE, COUNT, HEAP, NEWPTR, ERROR) \ ((*(NEWPTR) = new ( #TYPE "[" #COUNT "]", __alignof(TYPE),…

撕心裂肺的伤痛 2024-10-12 11:59:49 3 0

关于如何在基于动态数组的结构中存储键值对的想法

我有一个具有以下属性的动态数组: 存储键值对结构。 每当添加条目时重新分配内存 (realloc)。调用构造函数。 删除很棘手 - 被删除的条目必须从它所在…

她如夕阳 2024-10-12 09:17:38 2 0

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

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

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

调用析构函数方法比较

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

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

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

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

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

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

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

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

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

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

时光沙漏 2024-10-04 06:06:08 4 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 3 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 3 0

这第二个新的是什么?

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

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

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

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

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

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

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

葮薆情 2024-09-24 12:44:14 4 0
更多

推荐作者

1CH1MKgiKxn9p

文章 0 评论 0

ゞ记忆︶ㄣ

文章 0 评论 0

JackDx

文章 0 评论 0

信远

文章 0 评论 0

yaoduoduo1995

文章 0 评论 0

霞映澄塘

文章 0 评论 0

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