继续趟坑
发现nlohman json的宏NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE没法处理可选的字段,就是有些字段可能不出现在json中。
原因是只要某个字段field1出现在宏里,那么它就会去map里find(field1),找不到就抛异常,这样就没法用。
所以std::optional只能解决某个json字段的值可能为null的情况,而不能解决这个字段的名字完全不存在的情况,用宏也不行。
除非是把这个宏改一下(或者仿造一个宏),给每个字段加一个字段名是否可选的属性。
--
FROM 123.118.191.*