【发布时间】:2015-09-03 10:07:21
【问题描述】:
Qt 5.0 在 QList 或 QMap 等不同的容器类中引入了迭代器方法 cbegin() 和 cend()。
但在这些类中也有 constBegin() 和 constEnd() 方法。
所有这些方法都是 const 并返回 STL 样式的 const_iterator。
-
cbegin()/cend()是否具有与constBegin()/constEnd()相同的功能?对我来说似乎是这样,但QList、QMap 或container classes 的文档中没有说明任何内容。 - 是否存在应该使用
cbegin()/cend()而不是constBegin()/constEnd()或反之亦然的情况?
【问题讨论】:
-
@peppe 好点。但是当文档中没有说明它们是相同的时,谁保证它们将来会保持相同?
-
行为改变会破坏如此多的代码,以至于不可能发生。