64,648
社区成员
发帖
与我相关
我的任务
分享
int arr[10] = {1,2,3,4,5,6,7,8,9,0};
int *pbeg = begin(arr);
int *pend = end(arr);
auto diff = pend - pbeg;
int iArray[100];
int *piArray;
piArray=new int[100];
上面确定iArray和piArray的元素个数为100后,就不能再改变了,而且数组本身没有函数来获取其所容纳的元素个数,而vector的大小是动态了。
至于说“程序员无法确定一个给定数组的长度”这句话,可以通过下面两个输出函数说明;
如果你想输出一个数组中的全部元素,那么你还得传递一个数组的参数来说明数组的元素个数,而vector就不需要了
void PrintArray(int a[],int iSize)
{
for(int i=0;i<iSize;++i)
{
cout<<a[i]<<ends;
}
cout<<endl;
}
void PrintVector(vector<int> a)
{
for(int i=0;i<a.size();++i)
{
cout<<a[i]<<ends;
}
cout<<endl;
}