2015年2月2日月曜日

LSLのちょっとしたif文圧縮テクニック

まぁほぼ使うことはないと思う

たとえばこういう状況

integer A=TRUE;
integer B=3;
integer C;


if(A && B==3)C=TRUE;else C=FALSE;


こういう場合 if文の結果は Boolean値 (TRUE or FALSE)なので

C=(A && B == 3 );

こう出来る

たったこれだけなんだけど

まぁたとえばこれが4箇所くらいに分散してて
メモリがどうしてもカッツカツだった場合

これに置き換えることで
スタックメモリの消費を512バイトほど減らすことが可能な場合があります

まぁ負荷ではなくあくまでVM内メモリの話なので
パフォーマンス重視なら全く必要ない上に
メモリが足りてるなら ソースの可読性が下がってしまうデメリットのほうが
デカイテクニックではあるんだけど

知ってると最後の一手みたいな状況でちょっと役に立つかもね的な

以上