我創建了一個從Qlist繼承的新類。這個新類有兩個成員函數,需要以正向和反向的方式遍歷列表。如何在兩個成員函數之間共享一個QListIterator?
現在我相對新的C++和Qt所以我的錯誤我潛伏在聲明語法,但我不能得到一個迭代器作爲一個保護的成員變量聲明,將編譯。
在類的頭,我將有
[...]
public:
MyObject* moveNext(); // this returns a pointer to next object
MyObject* movePrev(); // this return a pointer to prev object
protected:
QListIterator<MyObject *> i(*this); // this is where the problem is!!!
[...]
decrlaring成員函數內的迭代器打敗目的,一個失去了它在以前的位置...
我要對這個錯誤的方式(通過從QList繼承,然後希望有一個全局和持久的列表)?
你期待'(* this)'做什麼? – 2013-04-08 13:45:10
如果我聲明這樣的迭代器「QListIterator i(* this);」在它編譯的成員函數內部。如果我從頭文件中的聲明中刪除(* this),它不會編譯。 QListIterator需要將列表發送給構造函數:http://qt-project.org/doc/qt-4.8/qlistiterator.html –
georgelappies
2013-04-08 13:49:32