【发布时间】:2021-12-31 05:57:41
【问题描述】:
我尝试打印出一个空向量,但收到以下错误:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/ostream:220:20: note: candidate function not viable: no known conversion from 'vector<int>' to 'basic_streambuf<std::basic_ostream<char>::char_type> *' (aka 'basic_streambuf<char> *') for 1st argument
basic_ostream& operator<<(basic_streambuf<char_type, traits_type>* __sb);
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/ostream:223:20: note: candidate function not viable: no known conversion from 'vector<int>' to 'std::nullptr_t' for 1st argument
basic_ostream& operator<<(nullptr_t)
我也试过std::cout << vec << std::endl;,但还是不行。
这是我的代码:
#include <iostream>
#include <string>
#include <fstream>
#include <vector>
using namespace std;
int main() {
vector <int> vec(5);
cout << vec << endl;
return 0;
}
【问题讨论】:
-
改为
for (auto i : vec) { cout << i << "\"; }。
标签: c++ vector declaration cout