-1

私は持っている:

class Game... 
class D3DGraphics...

Game クラスで宣言された gfx という D3DGraphics 型の変数があります。

さらにいくつかのクラスを作成します。

class Font...
class Viewport...

これらを両方とも D3DGraphics のフレンドにして、D3DGraphics クラス内で変数を宣言します。

Font font;
Viewport viewport;

最後に、私の D3DGraphics で変数を公開しました。

LPDIRECT3DDEVICE9 d3dDevice;

D3DGraphics のフレンドであっても、私のフォント クラスは d3dDevice を認識できませんか?

何故ですか?

EDIT://外部クラスにポインタをプッシュするようにコードを変更しました: https : //github.com/jimmyt1988/TheGame/tree/master/TheGame

  • windows.cpp // ここでゲーム オブジェクトを作成し、hWnd を渡します。
  • ゲーム.cpp / ゲーム.h
  • Font.cpp / Font.h
  • D3DGraphics.cpp / D3DGraphics.h
  • Viewport.cpp / Viewport.h
4

2 に答える 2