warning: enumeration value ‘FEA_INT’ not handled in switch
编译时候报这个警告,看了下代码,是有一个枚举类型,
num fea_data_type {
FEA_NONE = -1,
FEA_INT = 0,
FEA_DOUBLE = 1,
FEA_STRING = 2,
FEA_FLOAT_VECTOR = 3,
FEA_UINT64 = 4,
FEA_SHARED_VOID = 5,
FEA_WEIGHTED_STRING = 6,
FEA_VOID_X = 7,
FEA_STRING_REF = 8,
FEA_INT64 = 9,
FEA_UINT32 = 10,
};
然后在某个函数中对于枚举类型中的某几个通过switch()来控制对应type的处理流程:
~FeatureValue() {
switch (type_) {
case FEA_SHARED_VOID:
((std::shared_ptr<void>*)&data_)->~shared_ptr();
break;
case FEA_STRING:
((std::string*)&data_)->~basic_string();
break;
case FEA_FLOAT_VECTOR:
((std::vector<float>*)&data_)->~vector();
brea