關於迭代器的面試題

2022-05-05 15:33:07 字數 491 閱讀 5123

#include

#include

#include

using namespace std;

void printmy(vector);

int main()

itor++;

}printmy(vecint);

return 0;

}void printmy(vectorvec)

問輸出是幾?

在dev編譯執行以後,結果是3,程式設計師面試寶典是這樣解析的:這是迭代器的問題,只能刪除第乙個6,以後迭代器就失效了,不能刪除以後的元素。itor2=itor;這句說明兩個迭代器指向是一樣的。vecint.erase (itor2);等於vecint.erase (itor);,這是指標已經指向下乙個元素6了。itor++;又自增,指向下乙個元素3,略過了第二個6.我做出了以下修改方法:將迴圈做如下修改:

if(6==*itor)

itor++;

此時結果即為2

java面試題 有關於繼承的面試題

面試題 1,方法過載和方法重寫的區別?方法過載能否改變返回值型別?方法過載是在本類內方法的定義一樣,引數型別,引數個數不同,返回值型別不同 方法重寫是指子類的方法定義和父類的方法定義相同。其引數型別,引數個數,返回值型別都必須相同 方法過載能否改變返回值型別,因為與返回值無關。2,this與supe...

關於概率的面試題

當前面試中各大名企經常出現各種各樣的概率類面試題。究其原因,我覺得是概率型面試題可以綜合考查面試者的思維能力 應變能力 數學能力。在這裡對各種型別的概率型題目進行了收集和總結,希望在自我總結的同時對大家有所幫助。方法比較簡單,基本思想是每次隨機取乙個數,然後把它交換到最後的位置。然後對前 n 1 個...

關於settimeout的面試題

廢話不多說,先上 1 for var i 0 i 5 i 毫無疑問,結果為0,1,2,3,4 再看下面的情況 1 for var i 0 i 5 i 1000 5 此時,結果為5,5,5,5,5 for迴圈會先執行完 同步優先於非同步優先於 上面 中settimeout在for迴圈裡是非同步執行的,...