本文共 655 字,大约阅读时间需要 2 分钟。
Qt中的foreach和forever是用于遍历容器的宏,特别适合用于循环操作。这些宏在Qt开发中非常有用,但也有需要注意的地方。
foreach宏的使用方法foreach宏的基本用法如下:
foreach(varItem, Items)
其中,varItem是遍历操作中将取到的每个项目,Items是要遍历的容器。通过这种方式,varItem会逐一赋值为Items中的每一个项目。例如:
QStringList slt = {"abc", "qwe", "upo"};foreach 在.pro中使用此语句禁用该宏
如果你不想在项目中支持foreach宏,可以在.pro文件中添加以下配置: CONFIG += no_keywords
从Qt5.7开始不再鼓励使用
Qt从版本5.7开始,推荐使用C++11中文本化的for循环替代foreach宏。虽然foreach仍然有效,但不再是推荐选择。 forever宏的用法forever宏与foreach类似,但主要用于基于事件驱动的场景。它通常用于与emit信号关联的循环操作。例如:
QPushButton btn;forever() { btn.clicked.connect(this, &MyClass::someSlot);} foreach和forever在Qt开发中提供了便捷的方式来遍历容器,但在新版本的Qt中,使用C++11的for循环更为推荐。无论选择哪种方式,熟悉它们的使用方法对于提高开发效率至关重要。
转载地址:http://ccxfk.baihongyu.com/