我是c ++的新手,我正在学习矢量。我写了一个基本代码,看它是如何工作的,但是我得到了以下错误。
|| ===构建文件:"没有目标" in"没有项目" (编译器:未知)=== | C:\ Users \ Sohit \ Desktop \ Comparator \ vectors.cpp ||在函数' int main()':| C:\ Users \ Sohit \ Desktop \ Comparator \ vectors.cpp | 7 | error:' void operator =(const int&)'必须是非静态成员函数| C:\ Users \ Sohit \ Desktop \ Comparator \ vectors.cpp | 10 |错误:不匹配' operator =' (操作数类型是' std :: vector'和' int')|
不匹配' operator ='(操作数类型是' std :: vector'和' int' 请帮忙
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> v[100];+
for(int i=0;i<100;i++)
v[i]=i+1;
int Count=v.size();
std::cout<<Count;
bool is_nonempty=!v.empty();
cout<<is_nonempty;
vector<int>v2;
for(int i=0;i<100;i++)
v2.push_back(i*i);
int count2 = v2.size();
cout<<count2;
v.resize(200);
for(int i=100;i<200;i++)
v[i]=i*i*i;
v.resize(200);
for(int i=100;i<200;i++)
v2.push_back(i*i*i);
vector<int> v3=v2;
v.clear();
v(20,"unknown");
int n,m;
cin>>n>>m;
vector< vector<int> > Matrix(n,vector<int>(m,-1));
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
cout<<Matrix[i,j];
return 0;
}
答案 0 :(得分:5)
以下内容:
vector<int> v[100];
...声明了100个int
的大小为0
的向量,所以当你这样做时:
v[i] = i+1;
v[i]
是第i个向量,因此您尝试将i + 1
int
分配给v[i]
vector
。
如果你想要一个大小为100的矢量,那么正确的语法是:
vector<int> v(100);