[Qt小知识集锦]QT的5个基础知识,你知道几个
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Qt小知识集锦]QT的5个基础知识,你知道几个相关的知识,希望对你有一定的参考价值。
1 你不能调用QObject的拷贝构造函数和赋值运算符
QObject A;
QObject B(A);
错误。
QObject A;
QObject B;
B = A;
也是错误。
2 QPointer能够帮你自动管理指针
QPointer引用了QObject对象,删除被引用对象后,不管是否显示设置其为0,都能够自动归零;
QLabel *pLabel = new QLabel();
QPointer<QLabel> label = pLabel;
deletepLabel;
qDebug()<<"after="<<label;
输出:after = 0
3 使用Qt,你在运行时能够获取对象类型
QObject *obj = new XXXXX;
QLabel *label = qobject_cast<QLabel*>(obj)
Label不为0,那么label就是有效的,同理
QPushButton *button = qobject_cast<QPushButton *>(obj)
button不为0,那么button就是有效的。
4 不要忘记Q_OBJECT宏
Q_OBJECT宏能让你的QObject子类拥有信号槽能力,还有动态属性,只要是QObject子类,就记得加一个Q_OBJECT宏吧。
5 幕后英雄
Qt提供了很多强大的功能,如信号槽、动态属性,这都离不开——qmake,它帮你生成了这些功能的额外代码。
本文出自 “QT爱好者” 博客,请务必保留此出处http://qtfuns.blog.51cto.com/5268575/1760615
以上是关于[Qt小知识集锦]QT的5个基础知识,你知道几个的主要内容,如果未能解决你的问题,请参考以下文章