Я собрал все подсистемы большой, сложной модели Simulink в серию DLL. Все они работают в Visual Studio, кроме одного. Тот, который не работает, является единственным, который требует заголовочный файл simstruc.h, и я получаю около 120 сообщений об ошибках, когда пытаюсь их скомпилировать. Большинство из них находятся в simstruc.h, но также и в последующих включениях, например, sfcn_bridge.h. Все они выглядят одинаково:
error C2143: syntax error : missing ';' before '*' c:\matlabr2011b_x86\rtw\c\src\sfcn_bridge.h (37)
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\matlabr2011b_x86\rtw\c\src\sfcn_bridge.h (37)
.
error C2143: syntax error : missing ';' before '*' c:\matlabr2011b_x86\simulink\include\simstruc.h (2135)
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\matlabr2011b_x86\simulink\include\simstruc.h (2135)
Код в строке в приведенном выше примере выглядит следующим образом:
sfcn_bridge.h (37):
SS_SimMode *simModePtr;
simstruc.h (2135):
SparseHeader* slvrJacobianMatrix;
Я был в состоянии скомпилировать программы, которые включают simstruc.h раньше, но вдруг это не работает. Может кто-то указать мне верное направление?
Проверьте, отсутствует ли какое-либо объявление вашего класса «;» в конце.
class AAA
{
}; <--- this one
Редактировать:
Попробуйте также эти советы.
Других решений пока нет …