効率の良い定数構造体の渡し方
関数の引数に定数の構造体を渡す場合(例えば、SFXGraphics::SetForeColor 関数などに
SFXRGBColor クラスのインスタンスを渡す場合)、以下のように記述できます。
SFXGraphicsPtr graphics = SFXGraphics::GetInstance(); graphics->SetForeColor(SFXRGBColor(0xFF, 0x00, 0x00, 0x00));
この方法では、SFXRGBColor クラスのコンストラクタの分がオーバーヘッドになります。
SFXRGBColor クラスのコンストラクタを起動させずに、
定数を直接渡すには以下のように記述します。
static SFXRGBColor::AtomRecConst color = { 0x00, 0xFF, 0x00, 0x00 // 左から順に α、R、G、B }; SFXGraphicsPtr graphics = SFXGraphics::GetInstance(); graphics->SetForeColor(color);
このような構造体として、カラーの他にシェイプ クラスなどがあります。
参照 SFXGraphics::GetInstance | SFXGraphics::SetForeColor |
SFXRGBColor::AtomRecConst