c++ - 如何在qt中编写自己的收藏?

标签 c++ qt collections foreach

我正在写一些像 QT 中的普通集合一样的类:

class MyCollection
{
  MyElement & at(int) const;
  MyElement & operator[](int) const;
  int count() const;
};

现在我想用 QT 的 foreach 枚举我的新类中的所有元素。我应该怎么做才能实现这一目标?

最佳答案

Qt(至少 4.8)使用(来自 foreach 宏)模板包装类 QForeachContainer(参见 qglobal.h)进行迭代。默认实现调用 begin()/end(),但您也可以编写自己的特化......或者只实现 iterator begin(), iterator end() 成员

关于c++ - 如何在qt中编写自己的收藏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14461496/

相关文章:

c++ - Q_DECLARE_METATYPE 抛出缺少类型说明符错误

c# - 如何在不进行广泛搜索的情况下根据 2 个条件获取对象?

c++ - 如何就地修改一维数组的每个元素?

c++ - 如何将 vector (或不同的容器)与不可复制的类一起使用?

c++ - 从 [0.5 - 1] 规范化到 [0 - 1]

Java - 线程中出现异常 "main"java.util.ConcurrentModificationException

c++ - 维护一个有序的(通过参数,int)集合

c++ - 路径不存在时的 SHParseDisplayName

qt - "c: Command not found"错误

qt - 在 QSettings 的 ini 文件中具有分层组