Constants

定数は、スクリプト実行中に変わってはならない値を表すシンボル(あるいはラベル)です。

定数の使用はコードの可読性と保守性をあげるのに有効な手段です。

モジュール開発中に定数の値を変えたくなった場合、それが可能です。

最初の定数定義を変更するだけで全ての定数の値が変更されるので、スクリプトの中を隅から隅まで探して置換する必要がありません。

実際は、NWNスクリプトでの定数は、単に慣習に従った命名(英大文字とアンダーバー、数字のみを使う)をしただけの変数です。

(訳注:実行中に値を変更することももちろん可能です。こんなものを定数と言っては語弊があります。下の補足も合わせて考えると、NWNスクリプトでは定数は使えないと思った方が良いです)


int DAYS_IN_A_YEAR = 365;

NWNスクリプトが本当の定数をサポートしていないように見えますが、自分の定数を用意する方法もあります(推奨しません)。

\override\nwscript.nssに変数宣言と値を書けば、それは本当の定数として機能し、swith/case文の中で使用することが出来ます。

この方法を採った場合、あなたの\override\nwscrpit.nssをモジュールと一緒に配布してください。

さらに今後BioWareがNWNのバージョンアップの際にスクリプトを更新した場合にバージョン問題を引き起こす危険を被らなければならないでしょう。

上述したとおり真の定数でないため、switch/case文の値の条件として使うことは出来ません。




author: Charles Feduke, additional contributor(s): Iskander Merriman, David Delmont, JP team: ohtsuki
Send comments on this topic.