c++ 定点 new 及其汇编解释

(1)

++ 代码距离:

cpp 复制代码
#include <new>  // 需要包含这个头文件
#include <iostream>

int main() 
{
    char buffer[sizeof(int)];       // 分配一个足够大的字符数组作为内存池
    int* p = new(&buffer) int(42);  // 使用 placement new 在 buffer 上构造一个 int 对象

    std::cout << *p << std::endl;  // 输出 42

    // 注意:这里不需要(也不应该)使用 delete 来释放 p,因为 buffer 并不是通过 new 分配的。
    // 你需要手动调用析构函数来销毁对象:
    p->~int();

    return 0;
}

(2)接着咱们也写一个例子。弄清楚了一点:定点 new 的关键字 new 后面可以留一个空格再跟地址。语法上是正确的。这个不测试,就没法确定这个结论。

++ 汇编展开下这个函数 new 函数:

(3)

谢谢

相关推荐
倒头就睡的小比特3 天前
算法竞赛C++常用的STL
c++·算法
weilx12343 天前
C++笔记-文件IO-<fcntl.h>
c++
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
伞伞悦读3 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
Smileyqp沛沛3 天前
前端?C++ ?较大差异基础罗列
c++·基础·前端转c++
C语言小火车3 天前
C/C++ 为什么需要编译器?
开发语言·c++
旖旎夜光3 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
吞下星星的少年·-·3 天前
C++ 萌新语法入门篇
c++·算法比赛
霍霍的袁3 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
another heaven3 天前
【算法/C++ MD5算法能否逆解码?原理、C++实现与同类哈希算法对比】
c++·算法·哈希算法