c++中new的意思

string*str[4];charch[16];str[0]=newstring(ch);请问如果不加new和加new有什么区别... string *str[4];
char ch[16];
str[0]=new string(ch);
请问如果不加new和加new有什么区别
展开
 我来答
草根英雄1
2012-05-07 · TA获得超过409个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:232万
展开全部
new 相当于C中的malloc,会为指针分配堆上的内存,而不加new会分配栈内存。简单的说是这样,但string类本身会申请动态内存,所以使用new有些多余
块块1680
2012-05-07
知道答主
回答量:9
采纳率:0%
帮助的人:1.4万
展开全部
不加new的时候,会直接将ch赋值给str[0];
加new后,会将ch创建为一个string对象,然后再将这个对象赋值给str[0]
加了new后会多申请一次内存,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bc9b570
2012-05-07 · TA获得超过143个赞
知道答主
回答量:94
采纳率:0%
帮助的人:61.3万
展开全部
New 或者不 New
程序都可以执行,只是str 数组存放的位置会不同而已
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-05-07
展开全部
这是c语言的一种格式,不加程序就有可能执行不了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式