當前位置:成語大全網 - 書法字典 - C++中如何使用叠代器作為函數的默認參數

C++中如何使用叠代器作為函數的默認參數

是的,叠代器實際上是嵌套類型。因為它不帶指針參數,允許隱式轉換,當然不能給它壹個指針值。但它可以調用其默認構造函數作為參數的默認值,例如:

void f(STD::vector & lt;int & gt*叠代器ITER = STD::vector & lt;int & gt*叠代器())

{

}

不過話說回來,又有什麽用呢?使用默認構造函數定義的叠代器,結果是未定義的。而且叠代器的比較運算符會斷言兩個叠代器是否屬於同壹個容器,也就是說妳不能像ptr == NULL那樣通過判斷指針是否有效來判斷叠代器(ivec.begin() == iter)。所以叠代器不要用缺省值,缺省值沒有指針靈活。