-2
这个问题是关于vector
之后的书“C++ STL”的第一个问题。我无法回答它,而我在上网时无法找到答案。为什么不能int型是STL向量中的迭代器?
这个问题是关于vector
之后的书“C++ STL”的第一个问题。我无法回答它,而我在上网时无法找到答案。为什么不能int型是STL向量中的迭代器?
问题的一个显而易见的答案是,迭代器需要像指针一样工作,因此对于某个任意迭代器,*iterator
是有效代码(*
充当一元运算符)。
对于int
,这将不会是这样 - 给予一定i
int
类型的,你不能使用*i
(除了在*
将被解释为二进制运算符背景下,诸如j *i
做乘法)。
它是一个真正的STL向量,还是来自C++标准库的'std :: vector'?无论如何,迭代器必须可解引用。你不能取消引用'int'。 – 2014-10-28 07:30:41
对不起,我找不到一本名为“C++ STL”的书。是N.M. Josuttis的“C++标准库”吗?我在[Safari](https://www.safaribooksonline.com/)中查找了这一个,但是我找不到你所说的问题。 – TobiMcNamobi 2014-10-28 07:52:13
P.J.普劳格写了它。 “C++标准模板库”。可能在不同的国家/地区名称不同。@ TobiMcNamobi – wangsquirrel 2014-10-28 08:08:08