有关内存申请与释放问题!

dianhui CSDN会员 dianhui 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
先请大家看下面两个语句,程序运行时,以下两个语句都能正常运行!]
一):
CString temp1;
temp1=new char[1024];
temp1="你好啊!";
MessageBox(temp1);
二):
CString temp2;
temp2="你好啊!";
MessageBox(temp2);

两个CString类型的变量,temp1 temp2。
temp1申请了内存,而temp2没有申请内存,可是他们都能接收付值,程序运行两者都也正常。那么这样的话,temp1的temp1=new char[1024];语句是不是多余?
如果多余为什么很多程序又要用new char来给变量申请内存呢?而不是直接定义一个变量,接着就给该变量付值,不需要申请内存呢。

还有,对于一)temp1这个变量占有的内存,怎么样释放?
...全文

相关推荐

评论 16
收藏 已收藏
分享
返回顶部
dianhui CSDN会员
VC/MFC 16,550 成员 421,606 内容