永发信息网

C++ 看到了new的奇怪用法,求高人解释下。

答案:2  悬赏:0  手机版
解决时间 2021-02-14 18:07
C++ 看到了new的奇怪用法,求高人解释下。
最佳答案
举个例子,你就明白了:
void main() {
char s[sizeof(A)]; //先分配一块内存,大小正好能容纳A
A* p = (A*)s; //p指向的了这块内存
new(p) A(3); //p->A::A(3); 在已经分配好的内存上调用A的构造函数,并不会分配一块新的内存。
p->Say();
}
它实现了在指定内存地址上用指定类型的构造函数来构造一个对象的功能,后面A(3)就是对构造函数的显式调用。

所以,你的&ptr[i]这个位置必须已经指向了有效的内存。
全部回答
百度c++ placement new
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
aq.qq.com fz完成辅助
FavorMate产品用多久可以看出效果?
2017如果在民生银行贷款六万三年还清大概要多
故事书大嘴蛙给我的启发
图1是某细胞部分结构模式图。图2是某一生物体
宾阳微友圈我想加入宾阳微友圈
水灵香薰美容养生会所地址在什么地方,想过去
小熊猫的幼仔刚出生时是社么颜色
传统中药蜂蜜于夏季易发酵上涌,称为A.泛油B.
wf机顶盒怎么接电视机视频
普安县第二中学地址有知道的么?有点事想过去
深圳市公务员能否申请安居房?
【家庭小实验】列举几个家庭小实验
货到付款购物发货比较慢是吗?
民政局的章是方的还是圆的
推荐资讯
组织流水线生产的条件有( )。A.产品结构和工
一剪缘专业理发地址在什么地方,我要处理点事
鼎盛手机配件维修中心我想知道这个在什么地方
请教一个python问题:from XXX import XXX像
帮忙推荐几本关于做机械手的书籍
添记港式烧腊店在什么地方啊,我要过去处理事
十个点是什么意思
电脑玩qq游戏好的,就是玩逆战游戏玩到一半就
同方图文复印怎么去啊,我要去那办事
股票跌停以后还会下跌吗
韩诚烤吧这个地址在什么地方,我要处理点事
出纳能做发票报销的经办人吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?