迭代器和const指针

在Lippman等人的C ++ primer第五版第108页中,它说:

const_iterator行为类似于一个const指针(第2.4.2节,第62页)。 像const指针一样, const_iterator可以读取但不写入它表示的元素; [...]

我理解const_iterator的功能,但这种比较是否正确? 我认为它的行为更像是“指向const ”。

我误解了什么?


你是对的。 作者明确提到他们的书的第2.4.2节(我刚刚更新了你的问题以反映这一点),他们在那里定义他们打算如何使用术语“const指针”与“指向const的指针”。 鉴于这个确切的定义,他们应该在你引用的部分中说“指向const”。

(然而,其他上下文中的其他作者使用的术语不够精确,并且在此范围之外,如果有人将“指向常量”指向“常量指针”,我不会发现它不常见)。


当作者说“const指针”时,我认为他确实是指“指向const”。

他可能做这件事的原因是双重的:

  • 我们几乎从不使用常量指针(至少不是直接 - 模板不计数)。

  • 一个指向const的指针被写为const T* ,你发音为“const指针”。

  • 链接地址: http://www.djcxy.com/p/85199.html

    上一篇: iterator and const pointer

    下一篇: CircleCI: error with a spec involving timestamps