gpt4 book ai didi

c++ - 是否可以将 unordered_map 声明并初始化为函数参数?

转载 作者:行者123 更新时间:2023-11-30 05:42:31 30 4
gpt4 key购买 nike

可以像这样在一行中声明和初始化无序映射:

std::unordered_map<std::string,std::string> colors({{"sky","blue"}});

但是有没有可能用它来代替函数参数呢?

例如,如果我有一个具有以下签名的函数:

void foo(std::unordered_map<std::string,std::string> inputColors);

我可以通过将 map 声明并初始化为参数来调用它吗?

例如:

foo(std::unordered_map<std::string,std::string> colors({{"sky","blue"}});

编辑:正确的方法是什么?请提供示例语法。

最佳答案

你可以只提供一个初始化器:

foo({{"sky", "blue"}});

这将用于构造一个临时的 unordered_map,它将被传递给函数。如果函数重载以致出现歧义,那么您可以完整地拼写名称。

foo(std::unordered_map<std::string,std::string>{{"sky","blue"}});

关于c++ - 是否可以将 unordered_map 声明并初始化为函数参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30610438/

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