社区
C++ 语言
帖子详情
简单的入门问题
kofwr
2005-01-12 04:01:59
一个对象创建,我可以直接
假设构造函数为Test(int)
Test t(100);
也可以Test *tPtr=new Test(100);
new为动态创建内存,请问不用new的和用new的有什么区别
另外看了几个简单的例子,c++看的不深入,发现这些不用new去调用构造函数的执行,最后也没有显示的删除什么东西,不是说c++必须手动释放资源嘛?
...全文
60
4
打赏
收藏
简单的入门问题
一个对象创建,我可以直接 假设构造函数为Test(int) Test t(100); 也可以Test *tPtr=new Test(100); new为动态创建内存,请问不用new的和用new的有什么区别 另外看了几个简单的例子,c++看的不深入,发现这些不用new去调用构造函数的执行,最后也没有显示的删除什么东西,不是说c++必须手动释放资源嘛?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paranoid_gre
2005-01-12
打赏
举报
回复
Test t(100);在栈中,作用域控制生存期
Test *tPtr=new Test(100);在堆中,使用者控制生存期。
构造函数的调用还是一样的。
liem
2005-01-12
打赏
举报
回复
Test t(100); t在栈内建立,是有“名字”的实例
Test *tPtr=new Test(100);在堆中建立,是无名实例
在堆中建立的要及时回收内存资源。delete tPtr;
wu_ricks
2005-01-12
打赏
举报
回复
学习ing
lovefly_fanny
2005-01-12
打赏
举报
回复
手动释放资源是指你new出来的内存
因为这片内存是在堆上的,如果你不回收,
伴随着程序的运行,内存就会被耗尽,
而其他变量如上面的t(100)是在堆栈上的(也有可能
在静态数据区),堆上的对象在脱离了函数体后
就自动释放了,系统可以再次回收利用,不用自己去delete
手动释放是指 一个new 对应一个delete ~~
SpringMVC
入门
+myBatis
简单
示例分享
SpringMVC+myBatis
入门
简单
示例分享,轻量级 SpringMVC
入门
+myBatis
简单
示例分享
MyBatis经典
入门
实例
MyBatis经典
入门
实例,适合新手学习用。
SQL
入门
教程
数据库快速
入门
,告别书本上的繁琐,让你
简单
有效的学习
java初学者
入门
资料pdf
java
入门
最
简单
的,最好
入门
的资料,东西特别全而且
简单
易懂
Android开发
入门
60个小案例+源代码
适合初学者,大量
简单
小例子,完整源代码。
C++ 语言
64,691
社区成员
250,497
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章