首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Qt是否有自己的boost::optional替代方案?

Qt是否有自己的boost::optional替代方案?
EN

Stack Overflow用户
提问于 2015-11-16 21:07:42
回答 5查看 7.6K关注 0票数 9

Qt是否有自己的boost::optional替代方案,或者我应该只使用boost::optional?

EN

回答 5

Stack Overflow用户

发布于 2015-11-16 21:11:51

Qt具有“variant”类型,但不是“optional”类型。我认为boost::optional (或者,在较新的C++版本中,std::optional)是一个合理的选择。

票数 8
EN

Stack Overflow用户

发布于 2015-11-16 21:35:56

看起来QVariant已经可以做boost::optional想要做的事情了。您必须:

代码语言:javascript
代码运行次数:0
运行
复制
bool QVariant::isNull() const
bool QVariant::isValid() const
Type QVariant::type() 
static QVariant QVariant::fromValue(const T & value)
T QVariant::value()

因此,您可以包装任何类型,检查变量是否为空或有效,甚至获取要与if或switch语句一起使用的类型。

票数 5
EN

Stack Overflow用户

发布于 2015-11-16 21:11:23

在qt的QVariant容器之上实现了qt-maybe template,但它不在“标准”qt库中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33736172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档