我应该为C 中的每种类型都有一个解析器
Should I have a Parser for each Type in C++?
我目前正在为游戏构建一个简单的"级别"系统,其中游戏对象由组件组成,并且该组件中的数据存储在JSON中。假设我有以下结构:
struct SpriteComponent
{
int textureID;
std::string resource;
};
struct TransformComponent
{
Vector3 position;
Vector3 rotation;
Vector3 scale;
};
vector3是
struct Vector3
{
float x;
float y;
float z;
};
我需要使用JSON定义游戏对象,因此我可以在运行时加载它们。我的问题是,我应该在C 中为每种不同用户定义的类型编写解析代码?
我有unity3d的经验,它带有一个漂亮的jsonutility,可以自动映射以纠正字段(如果我没有错的话,请使用反射(。在C 中有任何库吗?我遇到了这个解析器,如果我没有错,它几乎仅限于使用其各自的键访问每个元素。
通常有人已经做过您需要做的事情: - (
对于C ,我喜欢Nlohmann的JSON标头库,该图书馆迄今已被证明是无价的。
似乎Unity通过反射来做到这一点,而反射目前不是C 的一部分。我找到了这个图书馆,这要归功于toπάνταῥεῖ!
相关文章:
- 是否可以在C++中有一个"generic"模板参数,该参数可以是非类型模板参数或类型?
- 是否有一个库可以检查C++中的变量类型?
- C++ 这里有一个返回 (24) 的布尔返回类型函数
- 有没有办法同时将一个类型分配给C++中的多个模板?
- 是否可以有一个模板函数,可以将向量和非向量类型都作为参数
- 有没有一种方法可以使用SFINAE来检测一个类型是否实现了给定的抽象基类
- C++是否有一个容器,每个类型最多存储一个对象
- C 有一个关键字,允许从派生类引用基本类型
- 我在代码中有一个错误,错误是:(智能感知:不允许抽象类类型"HourlyWorker"的对象:)
- 错误:在“(”标记之前进行预期的构造函数、析构函数或类型转换.即使我有一个构造函数
- 类有一个自类型的对象
- 我应该为C 中的每种类型都有一个解析器
- C++从文件中读取不同类型的数据,直到有一个以数字开头的字符串
- 是否有一个术语来表示"single mutex deadlock"(具有非递归互斥锁的死锁类型情况)?
- 为什么我们有一个类型不匹配
- 为什么嵌套类不能有一个类型为封闭类的成员?
- 为什么std::list可以有一个T类型的分配器
- std::map-C++要求所有声明都有一个类型说明符
- C++要求所有声明都有一个类型说明符
- 是否有一个类型trait来计算构造函数的总数