DirectX错误Vector3

时间:2013-11-24 16:51:20

标签: c++ directx directx-9

我正在使用directxtutorial.com教程..我在这些行中遇到错误:

D3DXMatrixLookAtLH(&matView,
&D3DXVECTOR3 (0.0f, 8.0f, 25.0f),    // the camera position //error
&D3DXVECTOR3 (0.0f, 0.0f, 0.0f),      // the look-at position //error
&D3DXVECTOR3 (0.0f, 1.0f, 0.0f));    // the up direction //error

c ++ \ test 1 \ test1 \ main.cpp | 145 |错误:获取临时[-fpermissive]的地址

在他们三个人中。他们是什么意思,我该如何解决它们?我正在谷歌上搜索答案,但没有人在这些行中有这些错误。谢谢!

1 个答案:

答案 0 :(得分:0)

您正在向D3DXMatrixLookAtLH()函数传递临时 D3DXVECTOR3个对象的地址。
相反,尝试在堆栈上构建D3DXVECTOR3的这些实例,并传递它们的地址,例如:

D3DXVECTOR3 cameraPos(0.0f, 8.0f, 25.0f);
D3DXVECTOR3 lookAtPos(0.0f, 0.0f, 0.0f);
D3DXVECTOR3 upDir(0.0f, 1.0f, 0.0f);
// Assume that you have properly defined matView

D3DXMatrixLookAtLH(
  &matView,
  &cameraPos,
  &lookAtPos,
  &upDir);