1
我試圖超載運算符< <僅打印STL容器的每兩個元素。但是,我在編譯過程中有一個錯誤:錯誤:'e'不是類,名稱空間或枚舉
error: 'e' is not a class, namespace, or enumeration
這裏是我的代碼:
#include <iostream>
#include <vector>
template<typename T>
std::ostream& operator<<(std::ostream &out, T const &e){
for(e::iterator it = e.begin(); it != e.end(); it = it + 2){
out << *it << " ";
}
return out;
}
int main(){
std::vector<int> v;
for(int i= 0; i < 10; i++){
v.push_back(i);
}
std::cout << v;
return 0;
}
通過'T'更換Ë:: iterator' :: iterator' – purplepsycho
使用'汽車&& it' – 101010