Chapter 29. Intermezzo: Correcting Minor Design Omissions with Member Type Inference

 

Those people who think they know everything are a great annoyance to those of us who do.

 
 --Isaac Asimov

In the last chapter, I mentioned that the pointer member type of enumerator_sequence had a somewhat peculiar definition. The reason this is an issue at all is that the initial version of enumerator_sequence did not provide member selection operators and therefore didn’t define a pointer member. Because the enumerator_sequence iterators are transient (Section 3.3.4), they can support the member selection operator and were updated to do so. The problem is that the template parameter list was already set, and there’s no reasonable way to allow the user to stipulate ...

Get Extended STL, Volume 1: Collections and Iterators now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.