次のコードは、次の1つのC++プロジェクトで正常にコンパイルされRenderingEngine.cpp
ます。
IRenderingEngine* CreateRenderer1()
{
return new RenderingEngine1();
}
しかし、Xcode 4.3.2で新しいプロジェクトを開始すると、エラーが発生します。
抽象クラスタイプ'RenderingEngine1'のオブジェクトの割り当て
定義はにありますIRenderingEngine.hpp
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() {}
};
これはどのように修正できますか?(これは、プロジェクト1のiPhone 3Dプログラミングの一部です)。
更新:でRenderingEngine.cpp
:
public:
RenderingEngine1();
void Initialize(int width, int height);
void Render() const;
void UpdateAnimation(float timeStep);
void onRotate(DeviceOrientation newOrientation);
private:
GLuint m_framebuffer;
GLuint m_renderbuffer;
};
そしてそれらの5つの機能はすべて定義されています。(最後の2つはダミーです-今のところすべて空です)