This question already has answers here:
std::queue iteration
(10个答案)
5年前关闭。
我有一个类,类似于:
在foo()内部,我想遍历其元素,但似乎语法不正确。
我以为它是这样的:
Live example
(10个答案)
5年前关闭。
我有一个类,类似于:
class A : std::queue<double>
{
[...]
void foo();
};
在foo()内部,我想遍历其元素,但似乎语法不正确。
我以为它是这样的:
for(auto elem : *this) {}
,但是不起作用(一长串的编译器错误)。正确的语法是什么? 最佳答案
queue
无法直接迭代,但是它具有 protected 成员 c
,它是基础容器。因此,这应该适合您的情况:
for( auto elem : c ) { ... }
Live example