Value这个类内存占用过大,有个提议~

union
{
    unsigned char byteVal;
    int intVal;
    float floatVal;

// double doubleVal;
bool boolVal;

    std::string* strVal;
    ValueVector* vectorVal;
    ValueMap* mapVal;
    ValueMapIntKey* intKeyMapVal;
}_field;

Type _type;

代码如上,如果吧double去掉的话,在移动设备上,内存占用会从16变成8,等于减少一半,还是差别很大的,而且double根本就不常用~