本文整理汇总了C++中DynamicObject::propertyList方法的典型用法代码示例。如果您正苦于以下问题:C++ DynamicObject::propertyList方法的具体用法?C++ DynamicObject::propertyList怎么用?C++ DynamicObject::propertyList使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DynamicObject
的用法示例。
在下文中一共展示了DynamicObject::propertyList方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: JSON_EncodeValue
int JSON_EncodeValue(json_buf* buf, DynamicObject& obj)
{
switch (obj.type)
{
case DO_UNKNOWN:
return json_write_null(buf);
case DO_INTEGER:
return json_write_integer(buf, obj);
case DO_BOOLEAN:
return json_write_bool(buf, obj);
case DO_NUMBER:
return json_write_number(buf, obj);
case DO_STRING:
return json_write_string(buf, obj);
case DO_ARRAY:
{
int len = json_putch(buf, '[');
size_t size = obj.size();
for (size_t i = 0; i < size; i++)
{
len += JSON_EncodeValue(buf, obj[i]);
if (i != size - 1)
len += json_putch(buf, ',');
}
len += json_putch(buf, ']');
return len;
}
case DO_OBJECT:
{
int len = json_putch(buf, '{');
std::vector<std::string> keys;
obj.propertyList(keys);
size_t size = keys.size();
for (size_t i = 0; i < size; i++)
{
std::string& key = keys[i];
len += json_write_string(buf, (char*)key.c_str());
len += json_putch(buf, ':');
len += JSON_EncodeValue(buf, obj[key]);
if (i != keys.size() - 1)
len += json_putch(buf, ',');
}
len += json_putch(buf, '}');
return len;
}
default:
return 0;
}
}