boost:: дополнительная альтернатива в стандартной библиотеке C++
Я пытаюсь заставить свою программу работать без boost
использование, но не может найти альтернативу некоторым полезным шаблонам. А именно, я не могу найти boost::optional
- аналогично шаблону в стандартной библиотеке. Есть ли стандартная Альтернатива для boost::optional
(в C++11 или где-то еще)?
3 ответов
короткий ответ: Нет.
длинный ответ: сверните свой собственный в соответствии со спецификацией boost. Документация довольно исчерпывающая, и код не такой сложный, но для этого все еще требуются навыки выше среднего C++.
чтобы обновить этот ответ: C++14, К сожалению, не поставляется с std::optional
. Нынешнее предложение (пересмотр 5) является N3793 и ожидается, что он будет отправлен как отдельная техническая спецификация или станет частью C++17.
в настоящее время предложение для C++14 (или C++17). Таким образом, ответ (вероятно) еще не :).
Как ПМР объяснил, это невозможно прямо сейчас, и не будет, пока C++17 не выйдет.
однако вы должны иметь возможность использовать это библиотека одного заголовка на github как падение в замене boost-или std необязательно. Он не имеет зависимостей (кроме компилятора с поддержкой c++11/C++14).