Cout不起作用-(错误:与运算符<;<;&x2019;不匹配) 我正在努力学习C++。我几乎不懂什么 我尝试用C++中的向量来实现动态数组,而所有的东西似乎都在工作,但是有一件事特别是 CUT语句抛出了一些奇怪的错误。 #include <iostream> #include <vector> using namespace std; int main() { vector<int> g1; for (int i = 1; i <= 5; i++) { g1.push_back(i); } cout << "This works"; // this cout works cout << g1; // but this does not why ? return 0; } #包括 #包括 使用名称空间std; int main() { 载体g1; for(int i=1;i
Cout不起作用-(错误:与运算符<;<;&x2019;不匹配) 我正在努力学习C++。我几乎不懂什么 我尝试用C++中的向量来实现动态数组,而所有的东西似乎都在工作,但是有一件事特别是 CUT语句抛出了一些奇怪的错误。 #include <iostream> #include <vector> using namespace std; int main() { vector<int> g1; for (int i = 1; i <= 5; i++) { g1.push_back(i); } cout << "This works"; // this cout works cout << g1; // but this does not why ? return 0; } #包括 #包括 使用名称空间std; int main() { 载体g1; for(int i=1;i,c++,c++11,C++,C++11,cout是一个流。您可以将所有整型(int,long,char,short,指针等)和字符串写入流,但不支持vector。如果要打印它,您可能需要遍历如下元素: for(int i:g1){ cout您需要像下面的代码片段那样打印向量: #include <iostream> #include <vector> using namespace std; int main() { vector<int> g1; for (int
cout
是一个流。您可以将所有整型(int
,long
,char
,short
,指针等)和字符串
写入流,但不支持vector
。如果要打印它,您可能需要遍历如下元素:
for(int i:g1){
cout您需要像下面的代码片段那样打印向量:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> g1;
for (int i = 1; i <= 5; i++) {
g1.push_back(i);
}
cout << "This works"; // this cout works
for (int i = 0; i < g1.size(); ++i)
cout << g1[i] << ' ';
return 0;
}
#包括
#包括
使用名称空间std;
int main()
{
载体g1;
对于(int i=1;i运算符没有重载。您没有遗漏任何内容。没有运算符或用于回复的存储库,我该怎么做?请您稍微加一点硼酸盐好吗?@waqar不允许一次打印整个向量,您必须循环打印它。好的,我有一个函数,比如hoo(vector arr){所以我看不到“向量”数组?g1是您声明的向量。我迭代了向量,直到长度达到所需项。它适用于玩具程序,但很容易损坏,因为它不在名称空间std
:这有点难以承受,但这就是我要找的thanks@HolyBlackCat无法将过载置于nam中espace NS
?@P0W您可以,但您也可以有多个命名空间。我想您可以使用NS::operator添加
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> g1;
for (int i = 1; i <= 5; i++) {
g1.push_back(i);
}
cout << "This works"; // this cout works
for (int i = 0; i < g1.size(); ++i)
cout << g1[i] << ' ';
return 0;
}
template <typename T>
std::ostream& operator<< (std::ostream& out, const std::vector<T>& vec) {
if ( !vec.empty() ) {
out << '{';
std::copy (std::cbegin(vec),
std::cend(vec),
std::ostream_iterator<T>(out, ", "));
out << "}";
}
return out;
}