你好,我有以下情况。
我使用的是 c++14,我有几个类,它们的对象是通过 JSON 对象序列化的。为了确定 JSON 文件表示的对象的类,JSON 有一个 className
字段,它映射到类名的字符串,例如:
{
...,
className: "class_one",
...,
}
我不想将每个字符串与每个可用类进行比较,而是使用哈希表 std::unordered_map
。问题是我需要手动创建一个哈希表,该哈希表将字符串的所有类映射到每个类的正确初始化函数(所有类都继承自此处的同一个父类(super class))。相反,我想在编译时创建此表,并根据从我前面提到的父类(super class)继承的每个新类添加新条目。这可能吗?
最佳答案
听起来可行。查看CompileTimeArmor::StaticHashMap
.
关于c++ - unordered_map(哈希表)的编译时创建也在编译时由类扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44049873/