Почему я получаю сообщение об ошибке «error: unknown type name 'virtual'» при попытке скомпилировать этот код?

Код:

struct IRenderingEngine {
    virtual void Initialize(int width, int height) = 0;
    virtual void Render() const = 0;
    virtual void UpdateAnimation(float timeStep) = 0;
    virtual void OnRotate(DeviceOrientation newOrientation) = 0;
    virtual ~IRenderingEngine() {}
};

Изучение opengles из книги по программированию 3D iphone, и он использует этот пример кода, но книга предназначена для xcode 3.x

Почему-то мне кажется, что это что-то с xcode 4 ....

РЕДАКТИРОВАТЬ:

Вот настоящая ошибка:

/ Users / Dan / Documents / opengles / Hello Arrow / Hello Arrow / IRenderingEngine.hpp: 27: 2: error: unknown type name 'virtual '[1]

И это законно - все, что требуется для неудачной компиляции, никаких других файлов. (Да, я пробовал скомпилировать буквально с main.m и этим файлом hpp)

Он распознает файл hpp как файл заголовка cpp, если я попытаюсь добавить его в скомпилированные файлы, он скажет, что «нет правила для обработки файла '$ (PROJECT_DIR) / Hello Arrow / IRenderingEngine.hpp' типа sourcecode.cpp.h для архитектуры i386 ", поэтому я действительно понятия не имею, что происходит

Обратите внимание, что я скомпилировал с main.m, что означает, что я скомпилировал другое приложение на основе Cocoa / Foundation

. Я попытался скомпилировать приложение на C ++, и все сработало отлично .... Аналогичным образом, компиляция с тестовым файлом main.mm тоже отлично работала

вот настоящая проект, дайте мне знать, насколько я ненормальный:

[Удалено, учитывая, что я потерял файл]

11
задан DanZimm 1 April 2013 в 14:37
поделиться