ラッパー

ラッパー(Wrapper)は、数学クラスなどの単純なオブジェクト(ベクトル (vector)や行列(matrix)など)用に存在します。通常、ラッパはパブリックなコンストラクタとデストラクタを持つ、完全に実装された C++ クラスです。API メソッドはラッパーを返すことがあります。スコープから外れることでラッパーを削除すると考えて構いませんが、その処理はユーザの責任になります。また、必要に応じてラッパの割り当てと割り当て解除を自由に実行できます。ユーザが参照するラッパーは、常にユーザ自身の所有となります。

重要: ラッパー宣言(MIntArrayMFloatArray など)は、できるだけループの少ない場所に移動してください。

多くの場合、ラッパーのコンストラクタが新規に呼び出されるのは、内部の Maya オブジェクトを割り当てる場合です。したがって、ループの深い場所でラッパーを宣言すると、メモリの配分と配分解除が繰り返し行われます。

このヒントは、MGlobal などのスタティックなラッパー クラスには適用されません。