readability-container-size-empty¶
Checks whether a call to the size()/length() method or the
std::size() free function can be replaced with a call to empty().
The emptiness of a container should be checked using the empty() method
instead of the size()/length() method or std::size(). It shows
clearer intent to use empty(). Furthermore some containers (for example, a
std::forward_list) may implement the empty() method but not implement
the size() or length() method. Using empty() whenever possible
makes it easier to switch to another container in the future.
The check issues warning if a container has empty() and size() or
length() methods matching following signatures:
size_type size() const;
size_type length() const;
bool empty() const;
size_type can be any kind of integer type.
Options¶
- ExcludedComparisonTypes¶
A semicolon-separated list of regular expressions matching class names for which the check will ignore comparisons of objects with default-constructed objects of the same type. If a class is listed here, the check will not suggest using
empty()instead of such comparisons for objects of that class. Default value is: ::std::array.