C++中的std::vector
是一個(gè)動(dòng)態(tài)數(shù)組,提供了一系列方法來(lái)插入和刪除元素
push_back(const T& value)
: 在向量末尾添加一個(gè)元素。pop_back()
: 刪除向量末尾的元素。insert(iterator pos, const T& value)
: 在指定位置插入一個(gè)元素。insert(iterator pos, size_type count, const T& value)
: 在指定位置插入多個(gè)相同的元素。insert(iterator pos, InputIt first, InputIt last)
: 在指定位置插入另一個(gè)容器的元素。erase(iterator pos)
: 刪除指定位置的元素。erase(iterator first, iterator last)
: 刪除指定范圍內(nèi)的元素。clear()
: 清空向量中的所有元素。emplace(iterator pos, Args&&... args)
: 在指定位置原地構(gòu)造一個(gè)元素。emplace_back(Args&&... args)
: 在向量末尾原地構(gòu)造一個(gè)元素。這里的iterator
是一個(gè)指向向量元素的迭代器,可以通過(guò)begin()
和end()
方法獲取向量的起始和結(jié)束迭代器。size_type
是一個(gè)無(wú)符號(hào)整數(shù)類型,表示向量的大小。Args&&... args
表示傳遞給元素構(gòu)造函數(shù)的參數(shù)。
注意:在使用這些方法時(shí),需要確保迭代器在插入或刪除操作后仍然有效。對(duì)于insert
和erase
方法,如果插入或刪除操作導(dǎo)致向量重新分配內(nèi)存,那么指向向量元素的迭代器、指針和引用可能會(huì)失效。在這種情況下,需要使用返回的新迭代器來(lái)更新迭代器。