vector是实现动态数组的序列容器类,这意味着在添加元素时大小会自动更改。vector将元素存储在连续的内存位置,并在运行时根据需要分配内存。
vector与数组之间的差异
数组遵循静态方法,这意味着vector在运行时无法更改其大小,而vector实现了动态数组,这意味着它在添加元素时会自动调整自身大小。
语法
请考虑vector'v1'。语法为:
vectorv1;
示例
让我们看一个简单的示例。
#include#include using namespace std; int main() { vector v1; v1.push_back("coonote.com "); v1.push_back("tutorial"); for(vector ::iterator itr=v1.begin();itr!=v1.end(); itr) cout<<*itr; return 0; }
输出:
coonote.com tutorial
在此示例中, vector 类已用于显示字符串。
c vector 函数
功能 | 说明 |
at() | 它提供了对元素的引用。 |
back() | 它提供了对last元素的引用。 |
front() | 它引用了第一个元素。 |
swap() | 它在两个vector之间交换元素。 |
push_back() | 它在末尾添加了一个新元素。 |
pop_back() | 它从vector中删除了last元素。 |
empty() | 它确定vector是否为空。 |
insert() | 它将在指定位置插入新元素。 |
erase() | 它将删除指定的元素。 |
resize() | 它修改vector的大小。 |
clear() | 它从vector中删除了所有元素。 |
size() | 它确定vector中的元素数量。 |
capacity() | 它确定vector的当前容量。 |
assign() | 它为vector分配新值。 |
operator =() | 它将新值分配给vector容器。 |
operator []() | 它访问指定的元素。 |
end() | 它是指vector中的过去纬度元素。 |
emplace() | 它将在位置pos之前插入一个新元素。 |
emplace_back() | 它将在末尾插入一个新元素。 |
rend() | 它指向vector的第一个元素之前的元素。 |
rbegin() | 它指向vector的last元素。 |
begin() | 它指向vector的第一个元素。 |
max_size() | 它确定vector可以容纳的最大大小。 |
cend() | 它是指vector中的last-last-element。 |
cbegin() | 它是指vector的第一个元素。 |
crbegin() | 它是指vector的last字符。 |
crend() | 它是指vector的第一个元素之前的元素。 |
data() | 它将vector的数据写入数组。 |
shrink_to_fit() | 它减小了容量并使它等于vector的大小。 |