2015年9月14日月曜日

Unity Replaceが機能しない。置き換わらない。

 C#とJavaの文法が似ているため時々勘違いをしてしまいます。
Javaの変数にはプリミティブ型とラッパー型の二つがあり、それぞれ値渡し、参照渡しのどちらかしかできません。
C#の変数は全て値渡しで、refやoutキーワードで参照渡しにすることができます。
 勘違いしやすいのが文字列操作です。
String.Replace()でString内の文字列が変更されると思いきや、変更されず。
String = String.Replace()と書く必要がありました。
Javaの場合はStringは全て参照渡し扱いなので動作が異なります。
関数の設計の際は注意をしないと。。

0 件のコメント:

コメントを投稿