掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
構造体に配列アクセス? (ID:60528)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
VC6に最初から入ってたヘッダー(多分DirectX5SDK)で継承元D3DVECTORを追ってみたら、以下のようになってました。 #D3DXVECTOR3はこのバージョンではまだできてないのか、見つかりませんでした。 (D3DTYPES.Hから抜粋) typedef float D3DVALUE, *LPD3DVALUE; typedef struct _D3DVECTOR { union { D3DVALUE x; D3DVALUE dvX; }; union { D3DVALUE y; D3DVALUE dvY; }; union { D3DVALUE z; D3DVALUE dvZ; }; #if (defined __cplusplus) && (defined D3D_OVERLOADS) 〜中略〜 const D3DVALUE&operator[](int i) const; D3DVALUE&operator[](int i); 〜中略〜 #endif } D3DVECTOR, *LPD3DVECTOR; 継承元が operator[]定義してました。 これが呼ばれていたのではないでしょうか? すぐ下に中身もあったので見てみたら・・・ (D3DVEC.INLより抜粋) inline const D3DVALUE& _D3DVECTOR::operator[](int i) const { return (&x)[i]; } とありました。パディングはない前提のようです。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.