我试图让我的程序在不使用boost的情况下工作,但找不到一些有用的模式的替代方案。也就是说,我在标准库中找不到boost::optional-likewise pattern。有没有什么标准的boost::optional替代方案(C++11或其他地方)?
发布于 2012-01-15 22:38:41
简短的回答是:不。
很长的答案:根据boost规范来运行你自己的。文档相当详尽,代码也不是那么复杂,但这仍然需要高于平均水平的C++技能。
更新这个答案:不幸的是,std::optional没有附带C++14。目前的提案(修订版5)是N3793,预计将作为单独的技术规范发布或成为C++17的一部分。
发布于 2012-11-09 21:00:05
目前有a proposal for C++14 (或C++17)。所以答案是(可能)还没有:)。
发布于 2015-07-30 23:23:09
就像pmr explained一样,现在不可能,在C++17推出之前也不会。
然而,你应该能够在github上使用这个single header library来替代boost-或者std optional。它没有依赖项(除了支持c++11/c++14的编译器)。
https://stackoverflow.com/questions/8870205
复制相似问题