什么是C++ Vector?
C++是一种面向对象的编程语言,其提供了很多的数据结构,数值计算和其它方面的库,并被广泛应用于不同领域的软件开发。其中,C++的Vector不仅是一种非常强大的数据结构,而且也是一种很实用的容器类。下面我们将详细讲解C++ Vector的用法。
1. 定义Vector
在C++中,Vector是一个模板类,需要使用“std”命名空间,从而使其能够与其他类和函数进行交互。下面是一个定义Vector的示例代码:
#include
#include
using namespace std;
int main(){
vector v;
return 0;
}
上述代码中,我们首先引入了头文件“iostream”和“vector”,然后使用了“using namespace std”命令将“std”命名空间引入程序,最后定义了一个名为“v”的Vector对象,并指定了其类型为“int”。
2. 添加元素
Vector的一个主要特点是其能够扩展,并不需要事先确定其大小。Vector提供了多种添加元素的方法,例如push_back()函数,它可以在Vector的末尾添加一个元素,并自动增加Vector的大小。下面是一个添加元素的示例代码:
#include
#include
using namespace std;
int main(){
vector v;
v.push_back(10);
v.push_back(20);
v.push_back(30);
return 0;
}
上述代码中,我们依次使用push_back()函数在Vector的末尾添加了三个元素10、20、30。
3. 访问元素
与普通数组一样,Vector中的元素可以通过索引进行访问。Vector的元素是使用下标从零开始进行访问的,使用vector::at()函数可以进行安全的索引访问。下面是一个访问Vector元素的示例代码:
#include
#include
using namespace std;
int main(){
vector v;
v.push_back(10);
v.push_back(20);
v.push_back(30);
for(int i=0;i
cout << v[i] << endl;
}
return 0;
}
上述代码中,我们使用了for循环遍历了Vector中所有元素,并将每个元素输出到屏幕上。
4. 删除元素
Vector同样提供了多种删除元素的方法,例如pop_back()函数,它可以从Vector中删除一个元素,并自动减少Vector的大小。另外,erase()函数也可以从Vector中删除元素,它需要指定要删除的元素的位置。下面是一个删除元素的示例代码:
#include
#include
using namespace std;
int main(){
vector v;
v.push_back(10);
v.push_back(20);
v.push_back(30);
v.pop_back();
v.erase(v.begin()+1);
return 0;
}
上述代码中,我们首先添加了三个元素,然后使用pop_back()函数从Vector的末尾删除了一个元素,最后使用erase()函数从Vector中删除了第二个元素。
5. Vector的容量和大小
Vector有两个重要的属性,即容量和大小。容量指的是Vector当前可容纳的元素数量,大小指的是Vector当前已经包含的元素数量。Vector包含一个capacity()函数和一个size()函数用于访问容量和大小属性。下面是一个演示Vector容量和大小属性的示例代码:
#include
#include
using namespace std;
int main(){
vector v;
cout << "Vector capacity: " << v.capacity() << endl;
cout << "Vector size: " << v.size() << endl;
v.push_back(10);
v.push_back(20);
v.push_back(30);
cout << "Vector capacity: " << v.capacity() << endl;
cout << "Vector size: " << v.size() << endl;
return 0;
}
上述代码中,我们首先创建了一个空的Vector,并使用capacity()函数和size()函数分别输出了它的容量和大小。然后,我们依次添加了三个元素,并再次输出Vector的容量和大小。
总结
本文介绍了C++ Vector的基本用法,包括定义Vector、添加元素、访问元素、删除元素、以及Vector的容量和大小属性。Vector不仅是一种非常强大的数据结构,而且也是一个很实用的容器类,因此在C++程序开发中广泛应用。