cpp libwrapiter provides a set of generic iterator wrapper classes that can be used in class interfaces to avoid exposing unnecessary implementation details.