4
FCLには、単一のオブジェクトだけに影響する多くの静的メソッドがあることに気付きました。たとえば、Array.Resize
です。静的にするのはどういう意味ですか?マイクロソフトでは、C#でメソッドを静的/メンバにする方法をどのように決定しますか?
FCLには、単一のオブジェクトだけに影響する多くの静的メソッドがあることに気付きました。たとえば、Array.Resize
です。静的にするのはどういう意味ですか?マイクロソフトでは、C#でメソッドを静的/メンバにする方法をどのように決定しますか?
インスタンスメソッドでは、オブジェクトのメンバープロパティのみを変更できます。 Array.Resize
の例では、メソッドは配列参照自体を変更します。そのため、静的であり、参照によってパラメータを取得します。
あなたが行う場合は、この:arr
上のメソッドを呼び出すことによって可能ではないでしょうarr
参照自体が変更され
int[] arr = ...;
Array.Resize(ref arr, 10);
、。
また、参照渡しをサポートしていないJavaなどの言語では、新しい配列を返すと宣言されます。