在C ++ 17中,如何声明和初始化带有可选元素的对(或元组)向量?
std::vector<std::pair<int, optional<bool> > > vec1 = { {1, true},
{2, false},
{3, nullptr}};
我有一对,其中第二个元素可能为null /可选。
这回答了你的问题了吗?如何为std :: optional <T>分配“无”?
—
朱利安·洛佩兹
@JulienLopez谈论分配。
—
LF
@LF删除不相关的上下文时,这是同样的问题:如何创建一个空的可选内容?
—
朱利安·洛佩兹
@JulienLopez在C ++中,初始化和赋值通常大不相同。仅仅因为两个问题碰巧具有重叠的解决方案,并不意味着它们是相同的。特别要注意的是,您不想在
—
LF
reset
这里使用。
std::piecewise_construct
也可以提供有趣的选择。