QT for hello world

今天,一个朋友让我把hello world 这个程序贴到网上,意外有点儿收获,贴出来大家分享分享。

#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QLabel *gao = new QLabel("<h2><i>hello</i>" " <i><font color = green>world</font><h2></i>");
    gao->show();
    delete gao;		//be careful
 
  
    return a.exec();
}


通过这一个简单的程序,我有这么几点心得。
1.每一个QT类,都有一个与该类同名(Q和首字母都大写)的头文,为什么前面加q而不加其他的字母呢,据说是因为Q的大写在LINUX下面显示出比较好看;
2.QApplication 对象是用来管理整个应用程序所用到的资源,构造函数可以接受命令行参数;
3.QLabel 对象是一个widget,在QT中游许多这样的类例如QPushButton,QSlider,QSpinBox等等;
4.QLabel 对象的构造函数可以传HTML样式字符串,用来改变窗口文字的样式;
5.关于 delete gao这句代码的调用,本人认为完全可以不写,因为在调用show()方法后,你将此程序指针gao指向的对象的内存释放,窗口就会消失,只是闪烁一下,delete的只是一个label而已,但是程序还以进程的方式被OS调用,那么,会导致你错觉的认为程序已经结束,这样就会导致不明不白的内存泄露,建议不写,等到你在窗口上点击关闭按钮时,renturn 代码被执行,返回给OS 正确的参数,OS销毁此进程,内存不会泄露。

   
   
看上面hello 进程,这就是结果,导致不能删除等问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值