python宏定义和全局变量_Qt全局变量、函数和宏定义详解

QT_VERSION:这个宏展开为数值形式 0xMMNNPP (MM = major, NN = minor, PP = patch) 表示 Qt 编译器版本,例如 Qt 编译器版本为 Qt 5.9.1,则 QT_VERSION 为 0x050901。这个宏常用于条件编译设置,根据 Qt 版本不同,编译不同的代码段。

#if QT_VERSION >= 0x040100

QIcon icon = style()->standardIcon(QStyle::SP_TrashIcon);

#else

QPixmap pixmap = style()->standardPixmap(QStyle::SP_TrashIcon);

Qlcon icon(pixmap);

#endif

QT_VERSION_CHECK:这个宏展开为 Qt 版本号的一个整数表示,例如:

#if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))

#include

#else

#include

#endif

QT_VERSION_STR:这个宏展开为 Qt 版本号的字符串,如“5.9.0”。

Q_BYTE_ORDER、Q_BIG_ENDIAN 和 Q_LITTLE_ENDIAN:Q_BYTE_ORDER 表示系统内存中数据的字节序,Q_BIG_ENDIAN 表示大端字节序,Q_LITTLE_ ENDIAN 表示小端字节序。在需要判断系统字节序时会用到,例如:

#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN

...

#endif

Q_DECL_IMPORT 和 Q_DECL_EXPORT:在使用或设计共享库时,用于导入或导出库的内容,后续章节有其使用实例。

Q_DECL_OVERRIDE:在类定义中,用于重载一个虚函数,例如在某个类中重载虚函数 paintEvem(),可以定义如下:

void paintEvent(QPaintEvent*) Q_DECL_OVERRIDE;

使用 Q_DECL_OVERRIDE 宏后,如果重载的虚函数没有进行任何重载操作,编译器将会报错。

Q_DECL_FINAL:这个宏将一个虚函数定义为最终级别,不能再被重载,或定义一个类不能再被继承,示例如下:

Class QRect Q_DECL_FINAL { // QRect 不能再被继承

// ...

};

Q_UNUSED(name):这个宏用于在函数中定义不在函数体里使用的参数,示例如下:

void MainWindow::on_imageSaved(int id, const QString &fileName)

{

Q_UNUSED(id);

LabInfo->setText ("图片保存为:"+ fileName);

}

在这个函数里,id 参数没有使用。如果不用 QJJNUSED(id) 定义,编译器会出现参数未使用的警告。

foreach(variable, container):foreach 用于容器类的遍历,例如:

foreach (const QString &codecName, recorder->supportedAudioCodecs())

ui->comboCodec->addItem(codecName);

forever:forever用于构造一个无限循环,例如:

forever {

...

}

qDebug(const char * message,…):在debugger窗体显示信息,如果编译器设置了 Qt_NO_DEBUG_OUTPUT,则不作任何输出,例如:

qDebug("Items in list: %d", myList.size());

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值