输入迭代器是否必须有const
解除引用运算符,或者仅仅非const版本是否满足其要求?
答案 0 :(得分:1)
没有
例如“输入迭代器”。
通常从流中读取。取消引用它会读取一个值并更改基础流。在使用++运算符之前,使用de-reference运算符无效。
http://www.sgi.com/tech/stl/InputIterator.html
你问可以吗?
当然,你可以用C ++做任何事情。
或者你在问?
现在它取决于哪个位是const:
- 你的意思是应该通过const方法取消引用吗?。
- 或者你的意思是返回(对象)的引用是const?
就我个人而言,我认为这两个问题的答案都是否定的 我想我很确定这不会违反输入迭代器的约束(在上面的链接中定义)。
但我认为将一个非成本引用返回给一个对象是不明智的,如果用户发生变异,也不会改变流所引用的底层对象(这违反了最少惊喜)。
总的来说,我认为你需要澄清你的问题 如果您更详细地解释上下文并询问天气特定签名违反约束条件,那么我可以给出更好的答案。目前这个问题过于模糊,因此我只能以过于笼统的方式表达答案。