Я обновлял старый код, который использовал мой класс span для homebrew, до класса, более соответствующего C ++ 20 std::span
, и я получаю ошибки компиляции, потому что std::span
не имеет size_type
и вместо этого имеет index_type
.Была огромная драма по поводу того, должен ли index_type
быть подписан или нет, но зачем пропускать size_type
?Это нарушает общий код, который ожидает, что контейнеры (или подобные объектам объекты) будут иметь size_type
.