C++: vector の全要素の出力
「<<」演算子のオーバーロードによって vector の出力を簡単にできるようにする。
1: #include <iostream>
2: #include <vector>
3:
4: template <typename T>
5: std::ostream & operator<<(std::ostream & stream, std::vector<T> & v) {
6: stream << "[";
7: for(typeof(v.begin()) i = v.begin(); i != v.end(); ++i) {
8: if (i != v.begin()) { stream << ", "; }
9: stream << *i;
10: }
11: stream << "]";
12: return stream;
13: }
14:
15: int main() {
16: std::vector<int> iv;
17: std::vector<char> cv;
18:
19: for (int i = 0; i < 5; ++i) {
20: iv.push_back(i);
21: cv.push_back('A' + i);
22: }
23:
24: std::cout << iv << std::endl;
25: std::cout << cv << std::endl;
26:
27: return 0;
28: }
・出力結果
1: [0, 1, 2, 3, 4]
2: [A, B, C, D, E]
0 件のコメント:
コメントを投稿