Qt 5.0在不同容器類別(如QList或QMap)中引入了迭代器方法cbegin()
和cend()
。cbegin()/ cend()vs constBegin()/ constEnd()
但是在這些類中也有constBegin()
和constEnd()
方法。
所有這些方法都是const
並返回STL風格const_iterator
。
- 做
cbegin()
/cend()
比constBegin()
/constEnd()
相同的功能?對我來說似乎是這樣,但在QList,QMap或container classes的文檔中沒有說明。 - 是否有人應該使用
cbegin()
/cend()
而不是constBegin()
/constEnd()
或反之亦然?
查看源代碼,Luke ... [QList](http://code.woboq.org/qt5/qtbase/src/corelib/tools/qlist.h.html#307),[QMap](http: //code.woboq.org/qt5/qtbase/src/corelib/tools/qmap.h.html#521)等(TL; DR:它們是相同的) – peppe
@peppe好點。但是,如果文件中沒有說明它們是相同的,誰保證它們將來保持相同? –
行爲變化會破壞太多的代碼,導致不可能發生。 – peppe