Вопросы по теме 'boost-optional'

почему бы не использовать boost :: optional как лучший scoped_ptr
почему это не обычное место для использования boost :: optional в качестве scoped_ptr, кажется, что это лучше, поскольку объект создается в стеке, а не в куче. Но я никогда не видел, чтобы это использовалось таким образом. Мой вопрос: каковы...
382 просмотров
schedule 09.09.2021

Предоставление ускорения :: необязательно ‹T› через Boost.Python в качестве внутренней ссылки или None
Я показываю свои классы C ++ через Boost.Python. Я намерен предоставить переменные-члены определенного пользователем типа класса с внутренней ссылкой. Это работало нормально, пока я не решил ввести переменную-член типа boost :: optional ‹T›. Есть...
558 просмотров
schedule 08.11.2021

Неоднозначность перегрузки с помощью boost:: optional, обходной путь?
Я хотел бы перегрузить с помощью boost:: optional, но не могу из-за двусмысленности перегрузки и ищу обходной путь. Например, следующий код не скомпилируется из-за неоднозначности: void foo() { ... } void foo(const Class& A) { ... } //...
103 просмотров

Как обойти GCC ‘*((void*)& b +4)’ может использоваться неинициализированным в этом предупреждении функции при использовании boost::Optional
У меня есть код, похожий на следующий: #include <boost/optional.hpp> ::boost::optional<int> getitem(); int go(int nr) { boost::optional<int> a = getitem(); boost::optional<int> b; if (nr > 0) b = nr; if...
11322 просмотров
schedule 23.03.2023

Как отключить std :: experimental :: optional?
С Boost я могу создать необязательный на месте с помощью: boost::optional<boost::asio::io_service::work> work = boost::in_place(boost::ref(io_service)); И отключите его с помощью: work = boost::none; Благодаря экспериментальной...
2684 просмотров
schedule 18.10.2022

Зачем использовать boost:: optional, когда я могу вернуть указатель
Если у меня есть функция find , которая иногда не может найти требуемую вещь, я склоняюсь к тому, чтобы эта функция возвращала указатель, так что nullptr указывает, что вещь не была найдена. E.g. Student* SomeClass::findStudent(/** some...
7220 просмотров
schedule 13.08.2023

Как инициализировать неперемещаемый и некопируемый член класса - boost:: optional
У меня есть неподвижный и некопируемый тип: struct A { A(std::string p1, int p2){} A(A const &) = delete; A(A&&) = delete; A& operator=(A const &) = delete; A& operator=(A&) = delete; }; Я могу...
374 просмотров
schedule 07.08.2023

Различные версии деструктора вызываются в зависимости от странных факторов
Почему следующий код генерирует такой вывод? main.cpp ctor 0x24a4c30 test.cpp dtor 0x24a4c30 test.cpp #include <boost/optional.hpp> struct Test { Test() { printf("test.cpp ctor %p\n", (void *) this); }...
51 просмотров
schedule 13.04.2024

Выгода от использования boost:: optional в следующем примере использования?
Это очень принципиальный вопрос. Есть ли какая-либо польза от использования boost:: optional в следующем сценарии: int somefunction(boost::optional<const Param&> value = getDefaultParam()){ return value->dosomething(); } or...
77 просмотров
schedule 02.05.2024