Platform SDK: DirectX |
D3DMATRIX 構造体の D3D_OVERLOADS 実装には、かっこ ("()") 演算子が含まれている。この演算子は、C++ プログラマに対して行列中の値にアクセスする便利な方法を提供する。C++ では、構造体のメンバの参照は、名前ではなく行および列番号で行うことができ、必要に応じてそれらの番号をインデックスとして使用できる。
typedef struct _D3DMATRIX { #if (defined __cplusplus) && (defined D3D_OVERLOADS) union { struct { #endif D3DVALUE _11, _12, _13, _14; D3DVALUE _21, _22, _23, _24; D3DVALUE _31, _32, _33, _34; D3DVALUE _41, _42, _43, _44; #if (defined __cplusplus) && (defined D3D_OVERLOADS) }; D3DVALUE m[4][4]; }; _D3DMATRIX() { } D3DVALUE& operator()(int iRow, int iColumn) { return m[iRow][iColumn]; } const D3DVALUE& operator()(int iRow, int iColumn) const { return m[iRow][iColumn]; } #endif } D3DMATRIX, *LPD3DMATRIX;
Windows NT/2000 :Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
バージョン : DirectX 5.0 以降が必要。
ヘッダー : d3d.h で宣言。