美文网首页Qt QML 杂记
Qt 拾遗 001 一些杂项

Qt 拾遗 001 一些杂项

作者: 赵者也 | 来源:发表于2020-04-03 11:39 被阅读0次
  1. 尽管在函数原型中参数名称可有可无,但在编程实践中最好是将其加上,这将使代码更易读。

  2. 函数的签名(signature)由名称和参数表组成。在 C++ 中,函数的返回类型不属于签名。

  3. 在 Windows 平台,如果想要建立一个“控制台”应用,需要在 pro 文件中加人一行 CONFIG += console ,“控制台”应用使用户可以通过标准输入/输出流进行交互

  4. 对于 Mac 上的控制台程序,如果在工程文件中添加一行 CONFIG -= app_bundle,就可以阻止创建一个 app bundle,它会将可执行文件放入一个子目录下。这样做还允许用户与标准 I/O 的交互。然后就可以使用命令行 qmake -spec macx-g++ 创建一个 Makefile。这样,命令 make 就只会为应用创建一个可执行文件

  5. qmake -r 命令:有些工程文件是 SUBDIRS(子目录),这意味着沿着文件树递归地同时运行 qmake 和 make。如果有来自旧版本 Qt 的 Makefile 文件,并且希望立即强制重新生成全部的 Makefile,则可以使用 qmake -r 命令,以沿着文件树向下递归地产生全部的 Makefile

  6. QString,优于 STL 中的字符串类型,因为它有丰富的 API 且更容易使用。它的实现支持延迟写时复制(lazy copy-on-write)和隐式共享(implicit sharing),所以函数能够接收 QString 类型的实参并返回 QString 类型的值,而不必每一次都为字符串分配内存并进行复制。此外,QString 还内置支持 Unicode 标准,以方便程序的国际化。

  7. 关键字 explicit 将阻止编译器为了隐式转换而自动使用构造函数

  8. 由于 this 是在执行它的构造函数时被初始化的(或者执行它的析构函数时被销毁),因此不要期望在这两种条件下能够执行正确的运行时绑定。因为构造函数设置的 virtual 函数表(它对运行时绑定至关重要)可能是不完整的(或者析构函数只是部分地销毁了它),所以当在构造函数或者析构函数中调用任何 this 方法时,都将由编译时绑定决定应该调用哪一个方法,就好像不存在 virtual 关键帧一样。正如 Scott Meyers 所说的那样:“构造函数或者析构函数中不存在 virtual 方法”

  9. 如果类中包含一个或者多个 virtual 函数,则也应该包含一个虚析构函数。这是因为,当对多态对象集合进行操作时,通常是通过基类指针删除这些对象,这会导致对析构函数的间接调用。如果析构函数不为 virtual 类型,则编译时绑定将决定应该调用哪一个析构函数,从而可能导致派生对象的不完整析构

相关文章

  • Qt 拾遗 001 一些杂项

    尽管在函数原型中参数名称可有可无,但在编程实践中最好是将其加上,这将使代码更易读。 函数的签名(signature...

  • QT 杂项

    判断操作系统,用Q_OS_WIN32和Q_OS_LINUX来判断当前操作系统是window还是linux,参考判断...

  • Shell脚本之杂项

    title: Shell脚本之杂项tags: shell编程, 杂项 记录一些学到的shell脚本里面的一些杂项(...

  • Qt 拾遗 002 connect

    Qt 拾遗 002 connect connect 的完整定义形式如下: 信号与槽连接的几种主要体式 体式一 体式...

  • 一些杂项

    python3.6 -m ensurepip --default-pip 一、生成随机字符串  1. 生成指定范围...

  • 一些杂项

    1.关于代理 @required:必须实现的方法@optional:可选 实现的方法(可以全部都不实现) 2.关于...

  • Qt 拾遗 007 创建 Qt 插件

    创建 Qt 插件 摘要: 高级 API:编写 Qt 自身扩展 低级 API:扩展 Qt 应用程序 部署插件 静态插...

  • QT入门简介(001)

    1,C++是一门通用的标准编程语言;QT是一套应用程序开发类库。 2,与MFC不同,Qt是跨平台的开发类库。Qt支...

  • CMake教程——QT项目使用CMake

    QT项目使用CMake编译QT IDE会增加一些额外的配置,我便记录下: 备注1: QT中moc的作用: Qt 将...

  • springmvc+spring+jdbc整合

    简单实例 实例2 杂项1 杂项2 杂项3 实例4

网友评论

    本文标题:Qt 拾遗 001 一些杂项

    本文链接:https://www.haomeiwen.com/subject/ubcuaftx.html