📜  C++ STL中的双端队列Assign()函数

📅  最后修改于: 2021-05-30 16:43:43             🧑  作者: Mango

deque :: assign()是C++ STL中的内置函数,用于将值分配给相同或不同的deque容器。在同一程序中被多次调用后,该函数销毁先前元素的值,并将新的元素集重新分配给容器。

  1. 句法:
    deque_name.assign(size, val)

    参数:该函数接受以下两个参数:

    • size:指定要分配给容器的值的数量。
    • val:指定要分配给容器的值。

    返回值:该函数返回任何内容。

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

    程序1:

    // CPP program to demonstrate the
    // deque::assign() function
    #include 
    using namespace std;
    int main()
    {
        deque dq;
      
        // assign 5 values of 10 each
        dq.assign(5, 10);
      
        cout << "The deque elements: ";
        for (auto it = dq.begin(); it != dq.end(); it++)
            cout << *it << " ";
      
        // re-assigns 10 values of 15 each
        dq.assign(10, 15);
      
        cout << "\nThe deque elements: ";
        for (auto it = dq.begin(); it != dq.end(); it++)
            cout << *it << " ";
        return 0;
    }
    
    输出:
    The deque elements: 10 10 10 10 10 
    The deque elements: 15 15 15 15 15 15 15 15 15 15
    
  2. 句法:
    deque1_name.assign(iterator1, iterator2)

    参数:该函数接受以下两个参数:

    • iterator1:它指定迭代器,该迭代器指向容器(deque,array等)的起始元素,该容器的元素将被传输到deque1。
    • iterator2:指定迭代器,该迭代器指向容器的最后一个元素(deque,array等),该元素的元素将被传输到deque1

    返回值:该函数返回任何内容。

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

    程序1:

    // CPP program to demonstrate the
    // deque::assign() function
    #include 
    using namespace std;
    int main()
    {
        deque dq;
      
        // assign 5 values of 10 each
        dq.assign(5, 10);
      
        cout << "The deque elements: ";
        for (auto it = dq.begin(); it != dq.end(); it++)
            cout << *it << " ";
      
        deque dq1;
      
        // assigns all elements from
        // the second position to deque1
        dq1.assign(dq.begin() + 1, dq.end());
      
        cout << "\nThe deque1 elements: ";
        for (auto it = dq1.begin(); it != dq1.end(); it++)
            cout << *it << " ";
        return 0;
    }
    
    输出:
    The deque elements: 10 10 10 10 10 
    The deque1 elements: 10 10 10 10
    
想要从精选的最佳视频中学习和练习问题,请查看有关从基础到高级C++的C++基础课程以及有关语言和STL的C++ STL课程。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”