ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

C言語とC++言語コミュのFunction Pointers

  • mixiチェック
  • このエントリーをはてなブックマークに追加
はじめまして。
Direct3D 9のクラスを作ってみるけど、エラーがあってどうやって直すか分かりません:

initD3D(wndHandle, pD3D, pd3dDevice, 640, 480, false)
.....
bool initD3D(HWND &nhWnd, LPDIRECT3D9 &nD3D, LPDIRECT3DDEVICE9 &nd3dDevice, int nWidth, int nHeight, bool bFullScreen)
{
m_hWnd = &nhWnd;
m_pD3D = &nD3D;
m_pd3dDevice = &nd3dDevice;

if(NULL == (*m_pD3D = Direct3DCreate9(D3D_SDK_VERSION)))
{
return false;
}

D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.BackBufferCount = 1;
d3dpp.BackBufferHeight = nWidth;
d3dpp.BackBufferWidth = nHeight;
d3dpp.hDeviceWindow = *m_hWnd;

if(FAILED(*m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_REF, *m_hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, *&m_pd3dDevice)))
return false;

return true;
}

*m_pD3D->CreateDeviceの行だけがエラーです。
error C2227: left of '->CreateDevice' must point to class/struct/union

*m_pD3Dは「Direct3DCreate9」できるけど、なんで「->CreateDevice」ができませんか?

コメント(2)

たぶん、(*m_pD3D)->CreateDevice(...)で文法エラーは消えそう。
ああっ、エラー消えました!どうもありがとうございました。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

C言語とC++言語 更新情報

C言語とC++言語のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング