📜  在C++ STL中列出emplace()函数

📅  最后修改于: 2021-05-30 17:23:25             🧑  作者: Mango

list :: emplace()是C++ STL中的内置函数,它通过在给定位置插入新元素来扩展列表。

句法:

list_name.emplace(position, element)

参数:该函数接受两个强制性参数,如下所述:

  • position –指定迭代器,该迭代器指向列表中要插入新元素的位置。
  • args –指定要在列表容器中插入的元素。

返回值:返回一个随机访问迭代器,该迭代器指向新插入的元素。

下面的程序说明了上述函数:

程序1:

// C++ program to illustrate the
// list::emplace() function
#include 
using namespace std;
  
int main()
{
    // declaration of list
    list lis = { 5, 6, 7, 8, 9, 10 };
  
    auto it = lis.emplace(lis.begin(), 2);
  
    // inserts at the beginning of the list
    lis.emplace(it, 1);
  
    cout << "List: ";
    for (auto it = lis.begin(); it != lis.end(); ++it)
        cout << *it << " ";
  
    return 0;
}
输出:
List: 1 2 5 6 7 8 9 10

程式2:

// C++ program to illustrate the
// list::emplace() function
#include 
using namespace std;
  
int main()
{
    // declaration of list
    list > lis;
  
    // inserts at the beginning of the list
    auto it = lis.emplace(lis.begin(), 4, 'a');
  
    // inserts at the beginning of the list
    lis.emplace(it, 3, 'b');
  
    cout << "List: ";
  
    for (auto it : lis)
        cout << "(" << it.first << ", " << it.second << ") ";
  
    return 0;
}
输出:
List: (3, b) (4, a)
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”