thinktwice said:
thanks for your reply, i want to use a class data member whhose type
is a iteraotr, i might use in several class methods, but before use it
i want to know whether this iterator is null or invalid
(a) Please don't top-post.
(b) Generally, it is impossible to determine through inspection whether an
iterator is invalid. The point is that operations on the underlying
container can invalidate iterators. The iterator is not required to detect
that.
(c) With a lot of care, you could use the container.end() value to indicate
an invalid iterator. However, this is fragile because of the problems
mentioned in (b).
(d) It might be better to consider a redesign that avoids the need for
checking the validity of the iterator. What is the underlying problem you
are trying to solve?
Best
Kai-Uwe Bux
PS: also please don't quote signatures.