It would be nice if boost::optional<T> had operator< defined whenever operator< was defined for T. This would allow us to use optional<T> as the key of an associative container. I suggest the following semantics:
bool operator<(optional<T> const &x, optional<T> const &y); Returns: If y is uninitialized, false. If y is initialized and x is uninitialized, true. If x and y are both initialized, (*x < *y). This results in a strict weak ordering with uninitialized optional<T> objects being sorted first. Joe Gottman _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
