拥有VC++/C#/桌面标签的文章

SVN pre-commit提交检查脚本

SVN提交的时候是可以在服务端做检查的,例如:1、不允许空信息2、不允许更改tags目录3、不允许删除trunk等等。它这些功能是通过操作系统的脚本实现的,例如windows里,建一个pre-commit.bat文件,放到服务端的hook目录就完成了。基本原则是返回0表示检查通过,其他表示失败,而且还可以通过echo把错误信息反馈给客户端。其反馈语法类似于:echo "this
阅读全文

几个老外c++博客推荐

People to keep an eye onHerb Sutter – BlogBjarne Stroustrup – C++11 FAQCppCon – YoutubeQt Official – BlogQt planetAndrzej – BlogScott Meyers – BlogFrancescmm
阅读全文

QList 容器类删除元素的安全方法

removeAt()是不安全的,最安全的是erase(),如果用removeOne()还要重载运算符 == ,不爽,测试用例如下:在有重复元素情况下,removeAt明显错误。
阅读全文

Qt的QSerialPort 使用注意事项

基本用法就不说了,说一下注意点:1、不可以跨线程使用,比如GUI构造,传指针给子线程,NO!2、同步和异步方法不可以混用,同步包括waitForReadyRead, waitForByteWritten这2个函数;异步方法包括dataReady, byteWritten等信号,注意,一定不能既用waitForReadyRead又用dataReady,同理发送也是。一般地,程序只有一个GUI线程,那
阅读全文

c++11 range-loop might detach Qt container (QStringList)避免方法

字面描述是循环会分离此列表。避免出现此警告用如下方法;1、定义新变量:const QStringList &list = oldList; for(auto &str : list){ }2、使用qt的宏:for(auto &str: qAsConst(list)){ }
阅读全文

qInstallMessageHandler 在debug模式下无效

qInstallMessageHandler大家都知道怎么用,但是有没遇到debug调试模式下不能输出呢? windows平台啊,linux好像没问题。 解决方案就是:
阅读全文

在Windows上编译QtCreator 6

-DCMAKE_PREFIX_PATH
阅读全文

QSqlQuery 如何与数据库 QSqlDatabase 关联 保持连接

结论:只有使用Qt内置的默认连接名的时候,QSqlQuery才可以用空的构造函数,即如下是一一对应的:mdb = QSqlDatabase::addDatabase("QSQLITE"); // 等价于 q(mdb) QSqlQuery q; q.exec("select *...")
阅读全文

qt 无边框窗口拉伸,边缘抖动,边框晃动

上一篇已经介绍了如何使用无边框进行大小调整:https://labisart.com/blog/index.php/Home/Index/article/aid/252不过这个解决方案有个小问题就是边框会抖动。现在介绍下其他2个方法:1、方法1,使用 Windows 原生的消息,实现 WM_NCHITTEST 消息,典型方案在这里,没测试过:https://stackoverflow.com/qu
阅读全文

OpenGL中的着色语言-GLSL

GlimpseGLSL是专门用来OpenGL shader的语言,shader是可以直接在GPU上运行的小程序,一般以字符串的方式在代码中使用。shader分为vertex shader(顶点着色器)与fragment shader(片段着色器)两种,顶点shader在每个顶点执行一次,片段shader在每个像素执行一次,两者配合决定模型的渲染结果。变量类型GLSL中用来传递值的变量类型有三种:a
阅读全文