C++ STL 中的 forward_list::operator =


在本文中,我們將討論 C++ 中 forward_list::operator = 的工作原理、語法和示例。

什麼是 STL 中的 Forward_list?

Forward list 是一種序列容器,允許在序列中的任何位置進行常數時間插入和刪除操作。Forward list 以單鏈表的形式實現。順序透過將每個元素與序列中下一個元素的連結關聯來維護。

什麼是 forward_list::operator =?

Forward_list::operator = 用於透過替換已存在的元素來為 forward_list 容器分配新值。此運算子還會根據新值修改 forward_list 容器的大小。

語法

Forward_container1 = (forward_container2);

此函式接受另一個相同型別的 forward_list 容器。

返回值

它返回“*this”指標。

在下面的程式碼中,我們建立了兩個 forward list 並向其中插入元素,然後我們將使用“=”運算子用 forward list 2 中的元素覆蓋 forward list 1 中的元素。

示例

 線上演示

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> forwardList1 = {10, 20, 30 };
   forward_list<int> forwardList2 = { 0, 1, 2, 3 };
   forwardList1 = forwardList2;
   cout << "my forwardList1 after using = operator with forwardList2\n";
   for (auto i = forwardList1.begin(); i != forwardList1.end(); ++i)
      cout << ' ' << *i;
   return 0;
}

輸出

如果我們執行以上程式碼,它將生成以下輸出

my forwardList1 after using = operator with forwardList2
0 1 2 3

示例

在下面的程式碼中,我們建立了兩個 forward list 並向其中插入元素,然後我們將使用“=”運算子用 forward list 2 中的元素覆蓋 forward list 1 中的元素。現在的主要任務是檢查 forward list 2 的狀態,即它是否也會發生變化。

 線上演示

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> forwardList1 = {10, 20, 30 };
   forward_list<int> forwardList2 = { 0, 1, 2, 3 };
   forwardList1 = forwardList2;
   cout << "my forwardList1 after using = operator with forwardList2\n";
   for (auto i = forwardList1.begin(); i != forwardList1.end(); ++i)
      cout << ' ' << *i;
   cout << "\n my forwardList2 after using = operator with forwardList1\n";
   for (auto i = forwardList2.begin(); i != forwardList2.end(); ++i)
      cout << ' ' << *i;
   return 0;
}

輸出

如果我們執行以上程式碼,它將生成以下輸出

my forwardList1 after using = operator with forwardList2
0 1 2 3
my forwardList2 after using = operator with forwardList1
0 1 2 3

更新於: 2020年3月2日

179 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告