Qt4与Qt5的三个区别

本文介绍从Qt4到Qt5的迁移关键点,包括模块变化、信号与槽的新语法及C++11支持。Qt5将部分图形界面类移至widgets模块,改进信号与槽连接方式以增强编译器检查,并全面支持C++11特性。
部署运行你感兴趣的模型镜像

1.新增widgets模块

        在Qt4中,Qt提供的全部图形界面相关类都包含在Qt Gui模块中,但QT5将一些图形界面类移到了QT widgets模块中。所以在Pro文件中,需要增加一句话:

greaterThan(QT_MAJOR_VERSION, 4):QT += widgets

         意思是如果Qt版本大于Qt4,则需要增加widgets模块。

 

2.信号与槽的语法

        Qt4中关联信号与槽一般这样写:

connect(sender, SINGAL(valueChanged(QString, QString)), 
        receiver, SLOT(showValue(QString)));

        但这样写,没有编译器检查,有时编译器通过但应该调用的槽函数没有执行。这是编译器不能给出错误信息,只能在运行时看是否有警告。

        Qt5中关联信号与槽是这样写:

connect(sender, &Sender::valueChanged, receiver, &Receiver::showValue);

         这种写法支持编译器检查,能够在编译时就发现错误;并支持类型的隐式转换。

 

3.对C++11的支持

         Qt5支持C++11,但有些编译器默认不开启。所以需要在Pro文件中增加一行:
 

CONFIG  +=  c++11

 

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值