當前位置:編程學習大全網 - 網站源碼 - 叠代器源代碼大全

叠代器源代碼大全

沒有再分配。但是後面的元素是前移的,所以被刪除元素後面的叠代器會失效。例如,下面的代碼將在調試模式下崩潰,在發布模式下正常運行,您可以看到數組的地址沒有改變。

#包含?& ltvector & gt

#包含?& ltiostream & gt

int?main(){

STD::vector & lt;int & gt?v{?1,?2,?3,?4,?5,?6,?7?};

汽車?p?=?v.end()?-?2;

std::cout?& lt& lt?& ampv[0]?& lt& lt?" \t "?& lt& lt?*p?& lt& lt?" \t "?& lt& lt?& amp*p?& lt& lt?”\ n”;

v.erase(v.begin()?+?2);

std::cout?& lt& lt?& ampv[0]?& lt& lt?" \t "?& lt& lt?*p?& lt& lt?" \t "?& lt& lt?& amp*p?& lt& lt?”\ n”;

回歸?0;

}v.swap(向量& ltT & gt㈤);把V復制到壹個新的向量裏(這個向量的容量和V的大小完全壹樣),然後和V交換,因為這是壹個局部變量,所以從V得到的內存會在這句話的最後釋放。同時,交換後,V的容量和大小是壹樣的。

建議妳看看源代碼,或者單步調試看看具體實現過程。

  • 上一篇:從鍵盤輸入壹個數字,假設為a,完成 a+aa+aaa+aaaa+…的前a項之和。 例如a=9時,計算9+99+999+999(JAVA編寫
  • 下一篇:海信電視怎麽樣連接音響?
  • copyright 2024編程學習大全網