Вопросы по теме '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 просмотров
schedule
11.09.2022
Как обойти 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