Qt

来自资料库(何亚红)
HEYAHONG讨论 | 贡献2023年1月4日 (三) 07:23的版本 →‎IDE
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

说明

Qt   是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。

IDE

本人使用qtcreator作为开发Qt的工具。

对于ubuntu,可采用以下命令安装qtcreator:

sudo apt-get install qtcreator

对于windows,本人则采用MSYS2中的qtcreator,直接安装即可使用:

#注意,需要选定合适环境(如mingw32、mingw64、ucrt64、clang32、clang64之一)
pacman -S ${MINGW_PACKAGE_PREFIX}-qt-creator

注意:无论是何种环境,如需使用更多功能(如Android开发),需要使用从官网下载并安装开发环境。

编程注意事项

内存管理

对于继承了QObject的类对象(即Qt框架中的类),如果设定了父对象,那么无需手工delete(如果这个对象是通过new构造的),当父对象析构时,子对象也会被析构。

对于在栈上分配的类对象,最好不要设置父对象。

未使用QObject的类对象仍然需要手工delete,如namespace Ui中的类对象。

线程同步

若采用了Qt的信号-槽机制的函数(也会用到QObject),通常不需要在意线程同步问题,connect时中的连接类型参数可使用队列连接方式保证执行时在对象所属线程执行。

官网

https://www.qt.io/