添加元素在指定的位置。
iterator insert(iterator where, value_type val);
void insert(iterator where, size_type count, value_type val);
template<typename InIt>
void insert(iterator where, InIt first, InIt last);
void insert(iterator where,
System::Collections::Generic::IEnumerable<Value>^ right);
参数
count
元素的数字要插入的。首先
范围开头插入的。last
范围的末尾插入的。right
要插入的枚举。val
元素的值要插入的。where
在对前面插入的容器。
备注
每个成员该成员在元素之前函数插入,指向由 where 在控件序列,其余的操作数指定的序列。
第一个成员函数插入带值 val 的元素并返回指定新插入的元素的迭代器。将它添加到位置之前的一个元素由迭代器指定的插入。
第二个成员函数插入值 val的 count 元素重复。是相同值的所有副本的使用该插入零个或多个连续的元素。
如果 InIt 是整数类型,第三个成员函数的行为与 insert(where, (size_type)first, (value_type)last)相同。否则,会插入序列 [first,last)。将它与另一个序列或多个连续的元素复制的插入零。
该序列由 right指定的第四个成员函数插入。使用到序列由枚举数描述的插入。
在插入一个元素,元素副本数是线性在元素的数目之间中的插入点和序列关闭末尾。(在插入一个或多个组件序列中的任何一端,元素复制不会发生。)如果 InIt 是输入迭代器,第三个成员函数在序列实际执行每个元素的唯一插入。否则,那么,当插入 N 元素时,元素副本数是线性在 N 以及元素的数目之间的插入点和序列关闭末尾。
示例
// cliext_list_insert.cpp
// compile with: /clr
#include <cliext/list>
int main()
{
cliext::list<wchar_t> c1;
c1.push_back(L'a');
c1.push_back(L'b');
c1.push_back(L'c');
// display initial contents " a b c"
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a single value using iterator
cliext::list<wchar_t>::iterator it = c1.begin();
System::Console::WriteLine("insert(begin()+1, L'x') = {0}",
*c1.insert(++it, L'x'));
for each (wchar_t elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a repetition of values
cliext::list<wchar_t> c2;
c2.insert(c2.begin(), 2, L'y');
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert an iterator range
it = c1.end();
c2.insert(c2.end(), c1.begin(), --it);
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert an enumeration
c2.insert(c2.begin(), // NOTE: cast is not needed
(System::Collections::Generic::IEnumerable<wchar_t>^)%c1);
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// insert a single value using index
it = c2.begin();
++it, ++it, ++it;
c2.insert(it, L'z');
for each (wchar_t elem in c2)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
return (0);
}
要求
标题: <cliext/列表>
命名空间: cliext