optional
来源:互联网 发布:淘宝盗图修改技巧 编辑:程序博客网 时间:2024/06/04 19:18
c++14中将包含一个std::optional类,它的功能和用法和boost的optional类似。optional<T>内部存储空间可能存储了T类型的值也可能没有存储T类型的值,只有当optional被T初始化之后,这个optional才是有效的,否则是无效的,它实现了未初始化的概念。
optional的应用场景
函数返回无效对象
有时根据某个条件去查找对象时,如果查找不到对象时就会返回一个无效值,这不表明函数执行失败,而是表明函数正确执行了,但是结果却不是有用的值,这时就可以返回一个未初始化的optional对象出去,在外面判断这个optional对象是否有效对象是否被初始化,如果没有被初始化就表明这个值是无效的。
boost中的optional就实现了这种未初始化的概念,boost.optional的基本用法很简单:
复制代码
optional<int> op;
if(op)
cout<<*op<<endl;
optional<int> op1 = 1;
if(op1)
cout<<*op1<<endl;
0 0
- optional
- optional
- Optional
- Optional
- Optional
- Optional-Optional Chaining
- boost optional
- boost optional
- boost optional
- boost optional
- boost optional
- Java8-optional
- Optional Map
- guava Optional
- guava Optional
- Optional 学习
- JDK8 Optional
- Optional使用说明
- jquery使用div块制作的按钮
- 安装Eclipse Maven插件的几种方法
- 使用javaScript解决asp.net中mvc使用ajax提交数组参数的匹配问题
- 开源2--RSS新闻情报云
- Git让gitignore生效
- optional
- [学习opencv]图像读取写入,加减乘除
- 腾讯实习笔试2014.04.12
- 浅谈Linux中系统调用代码相关
- cocos2d-x 学习——环境搭建
- 面试题整理-整数的n次方
- Leetcode:Permutations 数组的全排列
- 从CSV文件转换为Excel的多个Sheet
- MEF程序设计指南一:在应用程序中宿主MEF