1

エラーが発生します: C2036: 'void *': 不明なサイズ C2100: 無効なインダイレクション C2440: '=': 'CUSTOMVERTEX' から 'void *' に変換できません

 VOID* pVertices;
if( FAILED( g_pVB->Lock( 0, sizeof( Vertices ), ( void** )&pVertices, 0 ) ) )
    return E_FAIL;
std::copy( Vertices, Vertices, pVertices );
g_pVB->Unlock();

return S_OK;

何が悪いのかわからない

4

1 に答える 1

3

std::copyの場合、引数として 3 つの反復子が必要です。あなたの呼び出しでは、解体されていない頂点が適切かもしれませんが、それは空の範囲になるので、コピーを切り取ることができます。

最後のものは、入力と互換性のある出力反復子でなければなりません。void* は、インクリメントすることも、代入目的で逆参照することもできないため、間違いなく間違っています。

于 2013-06-07T17:40:19.033 に答える