在C ++ 17中,如何声明和初始化带有可选元素的向量对?
std::vector<std::pair<int, optional<bool> > > vec1 = { {1, true},
{2,false},
{3,nullptr}};
我有一对,其中第二个元素可以为null /可选。
您正在寻找std::nullopt
而不是nullptr
。
std::vector<std::pair<int, std::optional<bool> > > vec1 =
{ {1, true}, {2,false}, {3,std::nullopt} };