Я хочу объявить класс C++ в заголовке object-c, но я получаю сообщение об ошибке «error: expected» = ',', ','; ',' asm ' или '__ атрибут __' до «CPPClass» «Объявление класса C++ в заголовке object-c
Вот код из файла .h.
class CPPClass;
@interface OBJCClass : NSObject
{
CPPClass* m_pCPPObject;
}
@end
если я реализовать его Objective-C стиль @class CPPClass
я получаю сообщение об ошибке при определении его, сказав, что он не может найти объявление интерфейса. В любом случае, все классы Object-C, которые импортируют мой заголовочный файл с импортированным заголовком C++, также должны быть .mm-файлами.
пс. Я переименовал файл m в mm.
Какие у вас есть файлы? CPPClass.cpp, CPPClass.h, OBJCClass.mm и OBJCClass.h? Что такое компиляция файла, фактически перечисленная непосредственно перед ошибкой компиляции. Я предполагаю, что файл .cpp на самом деле жалуется, когда он # включает файл с определениями obj-c. –
классы, как вы сказали, файл cpp никогда не включает OBJCClass.h. Я думаю, проблема в том, что другие классы obj-c включают OBJCClass.h и не могут интерпретировать объявление стиля c. – MartinG