Почему std :: ssize () введен в C ++ 20?
C ++ 20 представил std::ssize()бесплатную функцию, как показано ниже: template <class C> constexpr auto ssize(const C& c) -> std::common_type_t<std::ptrdiff_t, std::make_signed_t<decltype(c.size())>>; Возможная реализация, похоже, использует static_castдля преобразования возвращаемого значения функции- size()члена cl ass C в ее подписанный аналог. Поскольку size()функция-член C всегда возвращает неотрицательные значения, зачем кому-то хранить их в переменных …