Я использую JSON Spirit для анализа и генерации JSON.
Я не могу использовать using namespace json_spirit
потому что другая библиотека использует конфликтующие имена.
Я пытаюсь определить тип как указано здесь прочитанного сообщения с
if(message.type() == obj_type)
но компилятор сообщает
error: ‘obj_type’ was not declared in this scope
if(stamper_message.type() == obj_type){
^
note: suggested alternative:
In file included from /usr/local/include/json_spirit.h:13:0:
/usr/local/include/json_spirit_value.h:32:22: note: ‘obj_type’
enum Value_type{ obj_type, array_type, str_type, bool_type, int_type, real_type, null_type };
Я также добавил эту строку
using json_spirit::Value_type;
и эта строка
typedef json_spirit::Value_type Value_type;
но это не помогает
Я прошу прощения за такой простой вопрос, но я не могу найти решение, так как это можно enum
быть импортированы для использования таким образом?
using json_spirit::Value_type;
Value_type obj_type = Value_type::obj_type;
Я буду удалять, если кто-то публикует что-то лучшее или способ объявить всех членов enum одной строкой.
Других решений пока нет …