gpt4 book ai didi

c++ - 我如何支持内部列表的基于范围的语句? (c++)

转载 作者:太空宇宙 更新时间:2023-11-04 13:08:51 26 4
gpt4 key购买 nike

我们有一些广泛使用的包装内部 std::list 的类

template <class COLL_TYPE>
class OurColl
{
...
private:
std::list<COLL_TYPE> *m_pList;

我希望能够使用基于范围的 for 循环:

OurColl<int> listInts;
for ( int x : listInts )
{

}

这将不得不迭代底层的 m_pList。

我觉得这个问题非常不同,因为它最接近 Chris Redford 在标记为重复的问题底部提供的答案。

此外,由于我所在的类(class)中有一个包含内部列表的模板,所以有一点曲折。

最佳答案

这似乎可行:

  typename std::list<COLL_TYPE>::iterator begin()
{
return m_pList->begin();
}
typename std::list<COLL_TYPE>::iterator end()
{
return m_pList->end();
}
typename std::list<COLL_TYPE>::const_iterator begin() const
{
return m_pList->begin();
}
typename std::list<COLL_TYPE>::const_iterator end() const
{
return m_pList->end();
}

关于c++ - 我如何支持内部列表的基于范围的语句? (c++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40887742/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com