首页 > 编程知识 正文

qt和vs哪个好,qt5.10.1安装教程

时间:2023-05-06 13:31:21 阅读:227297 作者:174

qt5下载

下载qt 5.12路径

下载 qtcreator路径

qt release路径

qtcreator集成msvc2017 x64

集成说明

qtcreator

qtcreator是我用过的非常好用的c++ ide。
比如它自带的自动注释功能。
在"Tools->Editor->completion",最下的3个选项,就是“自动注释功能”

Documentation Comments- Enable Doxygen Blocks- Generate brief desciption- Add leading asterisks

使用时,只要在类/函数/变量前,输入/**,然后回车,就可生成对应的注释格式

qt creator 界面字体过小 windows下

在批处理文件*.bat中输入:

@echo off set QT_SCALE_FACTOR=1.5qtcreator.exe

此外,QT_DEVICE_PIXEL_RATIO也可以实现同样的效果。
设置好后,qt creator的界面字体大了,但是批处理文件不能固定到任务栏。
这时,为批处理文件新建一个快捷方式*.lnk文件,并在“属性->目标中”的
path/to/bat/file改成cmd /c path/to/bat/file,这样快捷方式就能固定到任务栏了。

非 windows

在批处理文件*.sh中输入

#!/zzdfd/bash #my_qtcreator.sh export QT_SCALE_FACTOR=1.5 /opt/Qt/qtcreator-4.2.2/zzdfd/qtcreator

另外,设置环境变量QT_AUTO_SCREEN_SCALE_FACTOR也可以。

QT_AUTO_SCREEN_SCALE_FACTOR=1 ~/Qt/Tools/QtCreator/zzdfd/qtcreator $1 $2 $3 $4 $5 $6 $7 & windows 使用qtcrator上启动多线程编译

visual studio号称地表最强的IDE,但我用着确实不大好用,突出的几点:

快捷键不好按安装包太大cmake支持太差,总需要借助cmake-gui,每次添加文件十分麻烦visual studio号称最强,因为它在C#支持方面做得非常好,而在C++支持方面确实不算好,连自动注释的功能都没有,每次都得自己敲格式。…

于是我使用在linux上用的qt creator,这是专门为C/C++设计的,非常好用,遗憾的是目前在windows上的“性能测试“比较麻烦,因为qtcreator默认支持强大的valgrind,但这个工具在windows上没有。

qt creator集成vs2017,已经在前文讲过,现在说下开启多线程编译:

在"Tools->Kits"标签下,找"Generator",选"Ninja",然后"platform"和"Toolset"匀设置为<none>在“软件左侧-项目”下的“构建步骤”添加参数-j 4,4代表多线程数 qtcreator原生支持gtest

我使用gtest来实现测试驱动开发,qtcreator原生支持gtest,简直完美
具体参见cmake+gtest

the CDB process terminated 问题

使用qtcreator启动调试时提示

我尝试了各种从网上能找到的cmake设置办法,都不好用。。。

解决办法

在cmd窗口启动编译的程序,看提示哪个dll没有找到,把这个目录添加到系统变量

windows 系统,添加到变量Path,set Path=%Path%;%要添加的目录%
linux,添加到变量PATH, export PATH= P A T H ; PATH; PATH;{要添加的目录}

莫名其妙的情况

代码前一秒好好的,下一秒重编译后就出现如下情形:

debug定位不到代码出错处,最终停在NtWaitForWorkViaWorkerFactory。但看样子,像是main函数return的地方停的。
甚至代码简单到

int main(){return 0;}

还是这样。
我尝试了用 VC++的memory leak来检查,还是找不到原因。
于是我考虑也许这不是我的问题。google到的信息也支持我的结论,vc++不知道为何会启动多个线程。
换到linux下,发现之前的代码并无问题。
我查了整整两天。。。

qtcreator msvc 的cdb设置

qtcreator支持msvc的debugger的cdb.exe调试,设置界面如下图,简单说明下。
使用CDB控制台:支持std::string/std::vector等类型的debugger显示
当CrtDbgReport()被调用时停止:启用这个,会出现很多如上图的断点,尤其是使用第三方依赖库时,建议关掉
线程创建/线程退出:多线程调试时使用

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。