[過去ログ] 【3Dゲームエンジン】Unity質問スレッド36 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
437
(3): 名前は開発中のものです。 [sage] 2018/06/25(月) 15:40:55.77 ID:hF+d1Szw(1/13) AAS
public のことといえば最近気づいたけど
一度変数宣言すると値を書き換えても反映されない
たとえば
public int a=10→実行
public int a=20→実行 a=10のまま
こういう仕様なのか?
困るのが配列のとき
public int[] a=new int[2];
public int[] a=new int[3];→反映されない
変数名を一度書き換えるか宣言と同時にnewしないようにしないといけない
442: 名前は開発中のものです。 [sage] 2018/06/25(月) 16:04:13.08 ID:9PF0XJ3X(1) AAS
>>437
オブジェクトにアタッチした後だとInspector側の設定値が優先されるからそうなる。
一度privateにしたりするといいかもね。
453: 名前は開発中のものです。 [sage] 2018/06/25(月) 18:13:46.73 ID:IeloQePz(3/8) AAS
>>437
これの意味がわかったわ、てか日本語下手だなぁ
まず最初に
public int a = 10;
void Start () {
print("a:"+a);
}
を実行すると、「a:10」が表示されるで
「public int a = 10;」を 「 public int a = 20;」にして実行する

すると、「a:10」と表示されるわ、これバグじゃね?
って書いてくれればすんなりみんなわかるのに

で、なぜこうなるかというと、public定数なので当然アタッチされているオブジェクトが保存しているから
インスペクタ見ればわかると思うけど、自動でインスペクタに最初の値が保存されていて
それを書き換えてないから、そのまま最初の値が表示されるだけ

それくらい見ればわかるだろ
463
(1): 名前は開発中のものです。 [sage] 2018/06/25(月) 20:55:35.04 ID:IeloQePz(5/8) AAS
結局>>437はpublicの意味もインスペクタの意義もわかってないまま偉そうに変なやり方講義して消えたか

まぁ恥ずかしくて出てこれないよな普通の日本人ならな
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.025s