Все прекрасно знают (или сейчас узнают), что std::vector не умеет в const T. Хотя, вполне себе можно представить как такой контейнер будет себя вести:



  • под капотом std::aligned_alloc

  • добавляем через emplace_back(Args&&, который делает placement new

  • operator[] отдает через std::launder (C++17)


У меня есть метод, что подтягивает данные с базы. Хочу возвращать контейнер с const обьектами. Чтоб означить, что их не следует менять. Конечно ничего не мешает возвращать не-const


Есть ли что-нибудь на замену std::vector, чтоб самому не писать? Может boost?









 ,






URL записи