std::string item_id;
Object() = default;
Object(std::string _namespace,
std::string _item_id) : namespace_(std::move(_namespace)), item_id(std::move(_item_id)) {
}
};
как мне реализовать метод from_string, который бы принимал в аргумент "namespace:item_id" и возвращал Object? при этом саму строку парсить в компиль-тайме нужно. constexpr хочет literal type
std::string конечно constexpr с C++20, но если создать объект такого класса в constexpr, то и умереть он должен до рантайма
ну да, интересует можно ли так вообще и если да, то как
https://godbolt.org/z/ExhxGaq1a gcc/clang ещё не поддерживают constexpr std::string.
хмм, у меня просто 17й стандарт
Тогда про constexpr аллокации можно забыть
Но можно заменить все std::string на std::string_view. И будет работать
Зависит от того, что @kvxmmu собирается делать с объектами и откуда они создаются
А как же fixed_string?) На сцену выходит @unterumarmung))
Лучшая строка в мире
в общем спасибо, попробую посмотреть будет ли string_view как-то влиять. fixed_string тоже посмотрю
мммм...
constexpt Object fromStr( const char* val ){ return... ; } Нет?
constexpr literal type хочет
а не конструктор это должен быть?)
Ну дай ему... constexpt Object fromStr( constexpr const char* val )
Разве можно делать параметры функции constexpr?
Ильюх, ты чего над C++ надругаешься?
Ну я хоть попытался...
Во, хоть и я что-то новое узнал...
Ну ему Zig просто понравился
это я не знаю что
Язык такой
Обсуждают сегодня