みんな私はC#を学び始めたばかりで、C#の「この」参照についてはわかりません。誰かが実生活で非常に簡単な例を教えてくれます。C#で「これ」を使用する必要があるのはなぜですか、または「これ」をどこで使用できますか?
ありがとう。
みんな私はC#を学び始めたばかりで、C#の「この」参照についてはわかりません。誰かが実生活で非常に簡単な例を教えてくれます。C#で「これ」を使用する必要があるのはなぜですか、または「これ」をどこで使用できますか?
ありがとう。
非常に良い例は、フィールドを持つクラスと同じ名前の引数を持つコンストラクターがある場合です。「this」を使用すると、フィールドに引数名を割り当てることができます。これにより、これと同じ方法で解決できる他のあいまいさがあります。
public class MyClass
{
private int foobar;
public MyClass(int foobar)
{
this.foobar = foobar;
}
}
this キーワードを使用すると、コンストラクターに一意の変数名を付ける必要がなくなります。
多くの場合、すでに変数に適切な名前を付けていて、コンストラクターに一意の名前を付けるには、新しい名前を考え出すか、そうでなければ、あなたが持っている良い名前を台無しにする必要があります。
さらに、ローカル変数とインスタンス変数に同じ名前を付けて、希望するものを使用することができます。
例えば:
public class Foo
{
//instance variable
private String myVar;
public Foo(String myVar)
{
this.myVar = myVar;
}
public void someFunc()
{
String myVar = "Hello";// local variable
this.myVar = "World";//instance variable
Console.WriteLine(myVar + this.myVar);//prints HelloWorld
}
}
C++ では「this」はポインターであるため、「->」演算子を使用してメンバーを参照する必要があります。