我的標題有點令人困惑,請讓我解釋一下。我已經寫了一個鏈接像模板類,以便它可以接受和類型的數據在c + +(我基本上重寫了std :: list但單個鏈表),但現在我試圖在我的列表模板中定義一個子類迭代器,我明白如何實現所有這些大部分,我的問題是關於適當的編碼風格。我明白模板我無法將我的課分成單獨的頭文件和源文件,好吧,所以我定義了這個類放了幾個函數模板,然後在下面寫了函數...很酷,但現在關於我的子類迭代器,我應該在哪裏編寫這些函數的代碼,不會太多,所以我應該只是在類中編寫它?或者我應該把它寫在我的列表類以外,但在同一個文件中?如果是的話,我該如何做到這一點會約會GenList :: Iterator :: next()的工作?或者它會是別的東西(GenList是我的鏈表類,next()是我爲Iterator寫的函數)?還是應該在GenList之外定義我的迭代器,但是在同一個頭文件中?如果不清楚,請詢問澄清任何部分使用類模板在類中編寫類時的正確風格
0
A
回答
0
風格問題是題外話,你使用它的編碼風格。如果你想在類定義之外的迭代器類型的成員函數那麼語法是:
template<typename T>
GenList<T>::Iterator
GenList<T>::Iterator::operator++(int)
{
Iterator tmp(*this);
// increment *this
return tmp;
}
個人而言,我通常這樣定義的類定義內聯小成員函數。
是否有充分的理由調用迭代器Iterator
而不是傳統的iterator
?
相關問題
- 1. 在Java中使用抽象類時的編碼風格
- 2. 在模型類中使用java.awt.Point - 編碼風格錯誤?
- 3. 在模板類中使用模板化嵌套類的Typedef
- 4. 在非模板類中使用通用模板類
- 5. 模板類如何在C++中使用另一個模板類中的類型?
- 6. 嵌套類C++的正確模板
- 7. 如何正確使用類似系統的Twitter風格按鈕
- 8. 在另一個模板類中使用模板類類型的變量
- 9. 類模板中的類模板
- 10. 我可以重寫和使用超類中的模板類型的子類
- 11. 在模板類中聲明模板好友類時發生編譯器錯誤
- 12. 使用CoffeeScript類風格編寫Angular工廠
- 13. 如何編寫JavaScript模板類?
- 14. 「類模板」 與 「模板類」
- 15. 在F#模板中使用編譯時可派生類型
- 16. 在編譯時確定模板函數結果的類型?
- 17. 模板類的明確initializtion
- 18. Java的編程風格 - 調用類
- 19. 在模板類使用模板功能
- 20. 使用STL類的extern模板類
- 21. 打「類模板」朋友一類的正確語法
- 22. 風格類在c#
- 23. 使用setProperty正確寫入Java Bean類
- 24. 如何確定類型是否在編譯時從模板類派生?
- 25. 模板類中的模板類的外部類運算符
- 26. 如何在模板類的內部類中寫入虛函數?
- 27. C++:正確重寫虛函數模板類
- 28. CSS類風格
- 29. 使用模板時的類型推斷
- 30. 模板類的typedef - 使用
C++ 11有一個單向鏈表,'std :: forward_list' – 2013-02-14 16:11:13
我的老師還沒有覆蓋模板,但希望我們寫上帝知道有多少鏈接列表完全一樣,所以我想如果我的風格不正確,她會對她的分級感到噁心 – 2013-02-14 16:13:19
我不允許使用預先寫好的清單,我必須自己寫清楚,否則就要完成=) – 2013-02-14 16:13:35