FANDOM


Scripters_cafeログ


08/12/20 編集

リスト型ではない変数を、その変数を要素とするリスト型へキャストする処理についてです。


LSL では、次の 2 種類の書き方が可能です。

1. キャストを使う

list list_data = (list)string_data;

2. リスト生成構文を使う

list list_data = [ string_data ];

この 2 つの記法は、LSL2 でコンパイルした場合には異なる結果になります。

前者の場合は、LSO の CAST オペレーションを使用して、1 命令で変数が直接リスト型にキャストされ、結果が代入されます。

後者の場合は、変数の値と要素数を示す値がスタックに詰まれた後、スタックをリストに変換するオペレーション(STACKTOL)が呼び出されてリスト型に変換され、結果が代入されます。

したがって、LSL2 の場合は前者の書き方の方が有利です。


Mono では、この部分がどのような IL コードにコンパイルされているのか不明であるため、現時点では比較できません。


参考:



このページのTinyURL:http://tinyurl.com/SC-cast-to-list

広告ブロッカーが検出されました。


広告収入で運営されている無料サイトWikiaでは、このたび広告ブロッカーをご利用の方向けの変更が加わりました。

広告ブロッカーが改変されている場合、Wikiaにアクセスしていただくことができなくなっています。カスタム広告ブロッカーを解除してご利用ください。

FANDOMでも見てみる

おまかせWiki