2014-02-05 122 views
0

因此,我花了30分鐘的時間試圖讓列表的工作迭代器想知道我究竟做了什麼錯誤,但現在我可以說我真的很困惑,除非它的xcode問題。我最初嘗試創建一個迭代器(listIterator),並且xcode會返回錯誤「Expected」('for function style-cast or type construction')。但是,在厭倦嘗試之後,我複製並粘貼了在Stack的其他地方發現的一行來初始化迭代器,這令人欣慰的完美。我的問題是,這兩條線是相同的,但只有一個是引發錯誤identical iterator inits with different resultsC++迭代器問題

有人能向我解釋爲什麼Xcode是隻承認是引發錯誤的只有第二個?

謝謝

回答

4

您正在聲明一個名爲list的變量,所以list與e rror指的是這個變量。我假設你已經做了類似using namespace std;的事情 - 這就是爲什麼你永遠不應該這樣做的一個例子。然後,你可以有:

std::list<int> myIntList; 
std::list<int>::iterator myIntListIterator; 

std::list<int> list; 
std::list<int>::iterator listIterator; 

然而,在一個真正的程序,我不認爲只是list將永遠是一個合適的變量名,因爲它代表類型,而不是使用。

+0

啊,這會有很大的意義!那麼我應該聽取警告,並開始輸入我的std ::的 – sonobenissimo

+0

@sonobenissimo,你不一定要開始輸入std ::的一切,這就足夠了'使用std :: cout'等對於你特別需要的東西。 – kluka