C++
x
26
1
2
3
template <class T> class MyVector {
4
private:
5
std::vector<T> m_vector;
6
public:
7
void add(T value) {
8
m_vector.push_back(value);
9
}
10
typename std::vector<T>::iterator begin() { // <==== エラー!!
11
return m_vector.begin();
12
}
13
typename std::vector<T>::iterator end() { // <==== エラー!!
14
return m_vector.end();
15
}
16
};
17
18
int main() {
19
MyVector<int> values;
20
values.add(1);
21
values.add(2);
22
for (auto it=values.begin(); it!=values.end(); it++) {
23
// 反復
24
}
25
return 0;
26
}
$ g++ prog.cc -Wall -Wextra -std=c++11 -pedantic
Start
0
Finish