gpt4 book ai didi

c++ - 如何使用 std::variant 打印映射键/值?

转载 作者:行者123 更新时间:2023-12-01 14:12:48 27 4
gpt4 key购买 nike

我正在尝试在我的字典中打印某个值的键。我这样定义我的 map :

std::map<std::string, std::variant<float,int,bool,std::string>> kwargs; 
kwargs["interface"] = "probe";
kwargs["flag"] = true;
kwargs["Height"] = 5;
kwargs["length"] = 6;
我尝试正常打印该值,但发生了(没有运算符“<<”匹配这些操作数)错误。
std::cout << kwargs["flag"] << std::endl; 
有人可以帮我解决这个错误吗?

最佳答案

没有 operator<<std::variant ,不能直接打印出来。您需要从变量中读取值(按索引或类型),例如

std::cout << std::get<bool>(kwargs["flag"]) << std::endl; 
或者
std::cout << std::get<2>(kwargs["flag"]) << std::endl; 

关于c++ - 如何使用 std::variant 打印映射键/值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62707343/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com