c++ - 如何将结构放置到 std::unordered_map 中?
问题描述
我想在里面和 std::unordered_map 放置一个这样的结构。
struct Foo
{
int numberA;
int numberB;
char character;
Foo(int _numberA, int _numberB, char _character) :
numberA(_numberA), numberB(_numberB), character(_character)
{
}
};
std::unordered_map<std::string, Foo> foos;
foos.emplace("key", {1, 2, 'a'});
问题是我收到以下错误
main.cpp:42:8: fatal error: no matching member function for call to 'emplace'
foos.emplace("key", {1, 2, 'a'});
~~~~~^~~~~~~
什么是正确的语法初始化 Foo 而不必制作副本?
解决方案
推荐阅读
- html - 当 img 和 div 设置为相同宽度时,为什么 div 会变小?
- javascript - Mongo 查询将 Int/double 转换为带有逗号分隔值并附加 $ 符号的字符串
- python - 使用python从列表中获取最长的字符串
- salesforce - Salesforce 营销云 - 自定义旅程活动端点未执行
- python - 强制 virtualenvironment 创建一个空的环境
- css - S3 上的自托管 FontAwesome
- java - 将 double 数组转换为 longss 数组,以保持相对性
- lua - How to detect right-click on DCollapsibleCategory? [GLua]
- php - 为什么这个模态表单被重定向到我的 php 文件?
- shell - 如何在 AppShell Xamarin 表单中制作透明导航栏