C++ 中关于optional 使用过程中遇到的问题
生活随笔
收集整理的這篇文章主要介紹了
C++ 中关于optional 使用过程中遇到的问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
頭文件:#include <boost/optional.hpp>
?????????? using namespace boost;
optional很像一個僅能存放一個元素的容器,它實現了"未初始化"的概念:如果元素未初始化,那么容器就是空的,否則,容器內就是有效的,已經初始化的值。
- 無參的optional()或者optional(boost::none)構造一個未初始化optional對象,參數boost::none是一個類似空指針的none_t類型常量,表示未初始化;
??????? optional<int> op0;??//一個未初始化的optional對象
??????? optional<int> op1(none);//同上,使用none賦予未初始化值
??????? assert(!op0);
?????? ?assert(op0 == op1);
- 最重要的一點就是如果要用的話就一定要初始化,尤其是在比較深層次的成員變量的類是optional類型時,一定要確保它的父類中所有的optional類型的都已經被初始化了。
?????? optional<string> ops("test");??//初始化為字符串test
轉載于:https://www.cnblogs.com/hipposinsilt/p/6341222.html
總結
以上是生活随笔為你收集整理的C++ 中关于optional 使用过程中遇到的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python items函数用法,Pyt
- 下一篇: [学习笔记-SLAM篇]视觉SLAM十四