C++ 我应该如何在向量中获取一系列输入?
我使用了下面给定的函数inpvec,但它不起作用,因为当我在主函数中使用该函数时,没有使用迭代器的输出C++ 我应该如何在向量中获取一系列输入?,c++,vector,C++,Vector,我使用了下面给定的函数inpvec,但它不起作用,因为当我在主函数中使用该函数时,没有使用迭代器的输出 #include <iostream> #include <vector> using namespace std; void inpvec(vector <int> a, int veclen){ int b; for(int i=0;i<veclen;i++){ cin>>b;
#include <iostream>
#include <vector>
using namespace std;
void inpvec(vector <int> a, int veclen){
int b;
for(int i=0;i<veclen;i++){
cin>>b;
a.push_back(b);
}
}
int main()
{
int n,j;
cin >>n;
vector <int> vac;
vector <int> pat;
vector <int>::iterator it;
inpvec(vac, n);
inpvec(pat, n);
for(it=vac.begin();it!=vac.end();it++){
cout<<*it<<" ";
}
for(it=pat.begin();it!=pat.end();it++){
cout<<*it<<" ";
}
return 0;
}
#包括
#包括
使用名称空间std;
无效输入向量(向量a,输入向量){
int b;
对于(int i=0;i>b;
a、 推回(b);
}
}
int main()
{
int n,j;
cin>>n;
向量vac;
向量pat;
向量::迭代器;
inpvec(真空,氮);
inpvec(pat,n);
for(it=vac.begin();it!=vac.end();it++){
cout您正在此处传递向量的副本:
void inpvec(vector <int> a, int veclen)
void inpvec(向量a,int veclen)
您需要通过引用传递它:
void inpvec(vector <int>& a, int veclen)
________________________^_______________
void inpvec(向量&a,int-veclen)
________________________^_______________
您正在此处传递向量的副本:
void inpvec(vector <int> a, int veclen)
void inpvec(向量a,int veclen)
您需要通过引用传递它:
void inpvec(vector <int>& a, int veclen)
________________________^_______________
void inpvec(向量&a,int-veclen)
________________________^_______________
您的功能
void inpvec(vector <int> a, int veclen)
你的职能
void inpvec(vector <int> a, int veclen)
你应该考虑花一些时间研究C++的类型和内存的性质:指针/引用与普通变量。尝试理解<代码> int b=1之间的差异;int a= b;a=2;<代码> >代码> int a=1;int *b= a;b=2;< /C++ >。内存:指针/引用与普通变量。试着理解intb=1;inta=b;a=2;
和inta=1;int*b=&a;b=2;
之间的区别。检查此项