门户
书籍
教程
论坛
问答
下载
签到
个人空间
帐号
自动登录
找回密码
密码
登录
立即注册
账号
自动登录
找回密码
密码
登录
立即注册
请绘制轨迹完成人机验证
由vaptcha提供技术支持
登录
注册
搜索
搜索
搜索
热搜
qml
quick
串口
输入中文
数据库
arm
百度地图
qt聊天
QT安装
安装
多窗口
中文乱码
聊天
局域网
鼠标
QT
图片
乱码
rs485通讯
多线程
android
多文档编辑器
本版
用户
本版
用户
【HUX】问题互助平台
博客
动态
好友
帖子
收藏
道具
勋章
任务
淘帖
动态
日志
相册
分享
记录
留言板
群组
门户
导读
排行榜
设置
我的收藏
退出
Qt开源社区
›
精华区(请在“有问必答”发帖)
›
有问必答
›
界面美化
›
为什么构造函数可以声明定义一个布局类 ...
发布主题
返回列表
为什么构造函数可以声明定义一个布局类
1
回复
7309
查看
[复制链接]
dfdklldf58545
当前离线
积分
87
dfdklldf58545
累计签到:14 天
连续签到:1 天
来源:
2017-3-3 17:11:14
显示全部楼层
|
阅读模式
1
Qter豆
在一个类的构造函数里,声明定义了一个布局比如QHBoxLayout *layout=new QHBoxLayout。但是这么做的话不是在对象构造出后,layout就被自动析构了么?那布局就不存在了啊。平时写代码都把布局对象放在.h文件,设置为private,不是么。这两者有什么区别?
最佳答案
dearcc
查看完整内容
你想说的代码应该是这样的: 1、layout就算给m_pLayout,也不会析构,具体为什么自己看看new对象的概念。 2、m_pLayout是private,是类封装的概念。和layout比起来,你可以认为layout是一个局部变量,而m_Layout是一个类中的全局变量。 3、究竟对象析构还是不析构,看new的概念。
回复
使用道具
举报
dearcc
当前离线
积分
131
dearcc
累计签到:25 天
连续签到:1 天
2017-3-3 17:11:15
显示全部楼层
你想说的代码应该是这样的:
class Test
{
public:
Test()
{
layout = new Layout();
m_pLayout = layout;
}
private:
m_pLayout;
}
复制代码
1、layout就算给m_pLayout,也不会析构,具体为什么自己看看new对象的概念。
2、m_pLayout是private,是类封装的概念。和layout比起来,你可以认为layout是一个局部变量,而m_Layout是一个类中的全局变量。
3、究竟对象析构还是不析构,看new的概念。
回复
使用道具
举报
返回列表
发表新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满)
我知道了