>>278
>初出のmagnitudeがdirの中に入ったのはいつだろう
https://www.atmarkit.co.jp/ait/articles/0209/04/news001.html
Class変数は実体を持たず、初期化子とコンストラクタでインスタンスを生成した時に
始めて実体を持ち、未割り当ての変数はエラーが出る筈なのだけど・・・

UnityEngine.Vector2はstruct Vector2であり構造体なので
classとは違い宣言した時点でメモリが確保されます
https://ufcpp.net/study/csharp/resource/rm_struct/
>構造体は宣言した時点でデータを記録するためのメモリ領域が確保されます。
これがdir.magnitudeやdir.x、dir.yなどがインスタンス化なしにアクセスできる理由です。