找回密码
 立即注册
收起左侧

Qt定义一个对象,什么时候用指针创建,什么时候用变量?

3
回复
8515
查看
[复制链接]
累计签到:87 天
连续签到:1 天
来源: 2014-9-22 16:01:51 显示全部楼层 |阅读模式
1Qter豆
比如QLabel *label=new Qlabel;
为什么不直接这样定义QLabel label;
什么时候用指针创建,什么时候用变量?

最佳答案

查看完整内容

一般在普通函数里面QLabel label;这样创建的算是临时变量,函数执行完它们就销毁了,所以这个label是无法显示的,要使用new来创建。 可以看下《Qt Creator快速入门》第7章对象树的内容。
回复

使用道具 举报

累计签到:1570 天
连续签到:1 天
2014-9-22 16:01:52 显示全部楼层
一般在普通函数里面QLabel label;这样创建的算是临时变量,函数执行完它们就销毁了,所以这个label是无法显示的,要使用new来创建。

可以看下《Qt Creator快速入门》第7章对象树的内容。
回复

使用道具 举报

累计签到:181 天
连续签到:1 天
2014-9-22 16:04:29 显示全部楼层
这两种方式创建出来的变量生命周期不同,具体需要使用哪种方式创建要看具体的情况来定。
回复

使用道具 举报

累计签到:595 天
连续签到:1 天
2014-9-23 15:40:40 显示全部楼层
楼上加1
一个分配在堆,一个分配在栈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了