vector是可以在调用的方法中求得向量的大小的、
#include <iostream>
#include <vector>
using namespace std;
int tes(vector<int> s)
{
int ans=0;
int u=s.size();
cout<<u<<endl;//输出是4
}
int main()
{
vector<int> s;
s.push_back(1);
s.push_back(2);
s.push_back(3);
s.push_back(1);
int d=s.size();
cout<<d<<endl;//输出是4
tes(s);
}
但是用数组就不能求了:
#include <iostream>
#include <vector>
using namespace std;
int tes(int s[])
{
int c=sizeof(s)/sizeof(s[0]);
cout<<c<<endl;//输出是1
}
int main()
{
int s[]={1,2,1,2};
int d=sizeof(s)/sizeof(s[0]);
cout<<d<<endl;//输出是4
tes(s);
}