hur.cn - 华软网

 热门搜索

这个错误应该怎么改呢?

  作者:未知    来源:网络    更新时间:2011/8/26
C++">
     Model_info *model = (Model_info*)malloc(sizeof(Model_info));

     model->texture = new LPDIRECT3DTEXTURE9[model->NumMaterials];



这句错误了
error C2440: '=' : cannot convert from 'struct IDirect3DTexture9 ** ' to 'struct IDirect3DTexture9 *'

应该怎么改呢?
---华软 网友回答---
model->texture = new LPDIRECT3DTEXTURE9[model->NumMaterials];
-->
model->texture = new LPDIRECT3DTEXTURE9*[model->NumMaterials];

---华软网友回复---
强制类型转换不可以吗
---华软网友回复---
引用 1 楼 visualeleven 的回复:
model->texture = new LPDIRECT3DTEXTURE9[model->NumMaterials];
-->
model->texture = new LPDIRECT3DTEXTURE9*[model->NumMaterials];


还是不行呢
error C2440: '=' : cannot convert from 'struct IDirect3DTexture9 ***  ' to 'struct IDirect3DTexture9 *'
---华软网友回复---
Model_info里的texture字段是怎么定义的,也不贴出来。不过我根据你的错误信息,估计他是个指针的指针。所以应该真么弄
(×(model->texture)) = new LPDIRECT3DTEXTURE9[model->NumMaterials];

---华软网友回复---
model->texture = new DIRECT3DTEXTURE9[model->NumMaterials];
---华软网友回复---
struct Model_info
{
DWORD NumMaterials;
LPD3DXMESH Mesh;
LPDIRECT3DTEXTURE9 texture;

LPD3DXBUFFER adjacency_buffer;
LPD3DXBUFFER materials_buffer; 
};

是这样的
---华软网友回复---
有人知道怎么改吗?      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。