Computer >> Máy Tính >  >> Lập trình >> C ++

hàm deque gán () trong C ++ STL

Nhiệm vụ được đưa ra là hiển thị hoạt động của deque ::gán () trong C ++ STL.

Deque là một hàng đợi kết thúc kép. Trong C ++, deque ::gán () là một hàm có sẵn được sử dụng để gán giá trị mới cho vùng chứa deque. Mỗi khi hàm này được gọi, nó sẽ gán một giá trị mới cho vùng chứa deque bằng cách thay thế các giá trị hiện có và thay đổi kích thước được phân bổ cho phù hợp.

Cú pháp

Cú pháp của deque ::gán () như sau -

dequename.assign(<int> size, <int> val)

Tham số

Hàm này bao gồm 2 tham số -

Đầu tiên là kích thước , đại diện cho kích thước của hộp chứa deque và hộp thứ hai là val , là giá trị được chứa trong vùng chứa deque.

Cũng thay vì kích thước và val, chúng ta cũng có thể cung cấp trình lặp làm tham số để khai báo điểm bắt đầu và điểm kết thúc, mô tả của cả hai được đưa ra làm ví dụ.

Giá trị trả về

Hàm không có giá trị trả về.

Ví dụ

Input: dq.assign(5, 1)
Output: deque elements are: 1 1 1 1 1
Input: dq.assign(5, 2)
dq1.assign(dq.start()+2, dq.end())
Output: deque elements are: 2 2 2 2 2
deque elements are: 2 2 2

Giải thích - deque dq có 5 phần tử 2 2 2 2 2, trong khi trong dq1 chúng ta bỏ qua 2 phần tử từ đầu và bắt đầu từ phần tử thứ ba của dq nên dq1 có 2 2 2.

Với kích thước và giá trị

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main() {
   deque<int> deq;
   // assign 5 values of 1 each
   deq.assign(5, 1); //here, 5 is the size and 1 is the value
   cout << "deque elements are: ";
   for (auto it = deq.begin(); it != deq.end(); it++)
   cout << *it << " ";
   return 0;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -

deque elements are: 1 1 1 1 1

Với trình vòng lặp

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main() {
   deque<int> deq;
   // assign 5 values of 2 each
   deq.assign(5, 2);
   cout << "deque elements are: ";
   for (auto it = deq.begin(); it != deq.end(); it++)
   cout << *it << " ";
   deque<int> deq1;
   // assigns all elements from
   // the second position to deque1
   deq1.assign(deq.begin() + 2, deq.end());
   cout << "\ndeque1 elements are: ";
   for (auto it = deq1.begin(); it != deq1.end(); it++)
   cout << *it << " ";
   return 0;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -

Phần tử
deque elements are: 2 2 2 2 2
deque1 elements are: 2 2 2