Параметр функции «не объявлен в этой области». Параметр виден в файле h

0

Вот код для справки http://pastebin.com/nr7wuxNA

Я тестирую несколько вызовов с помощью драйвера C++ для монго

Он работает, за исключением случаев, когда я добавляю эту строку

obj.appendBinData( "binTest",sizeof(test), BinDataGeneral, test);

Вот сообщение об ошибке

ninexample.cpp: In function ‘int main(int, const char**):
ninexample.cpp:73:48: error: ‘BinDataGeneral was not declared in this scope
     obj.appendBinData( "binTest",sizeof(test), BinDataGeneral, test);
                                                ^
ninexample.cpp:73:48: note: suggested alternative:
In file included from /usr/include/mongo/db/jsobj.h:34:0,
                 from /usr/include/mongo/client/dbclientinterface.h:25,
                 from /usr/include/mongo/client/connpool.h:23,
                 from /usr/include/mongo/client/dbclient.h:32,
                 from ninexample.cpp:22:
/usr/include/mongo/bson/bsontypes.h:102:9: note:   ‘BinDataGeneral
         BinDataGeneral=0,
         ^

Я новичок в C++, поэтому я не уверен, почему здесь возникает ошибка, так как он, похоже, видит тип BinDataGeneral в файле h.

Может ли кто-нибудь прояснить это для меня?

Благодарю!

Теги:

1 ответ

1
Лучший ответ

Компилятор ищет BinDataGeneral, но не может разрешить этот символ.

Попробуйте mongo::BinDataGeneral.

  • 0
    Да, это действительно исправляет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню