在MSDN文章的情況下:含義「這」在結構和
在一個類的實例的構造或實例函數成員,這 被歸類爲一個值。因此,雖然這可以用於將 引用到調用該函數成員的實例,但並不是 可能在類的函數成員中分配給此實例。在結構的一個 實例構造函數中,這對應於結構類型的輸出參數 ,並且在 結構的實例函數成員內,這對應於結構類型的ref參數。在 這兩種情況下,這被分類爲一個變量,並且有可能通過 修改整個結構體的功能成員被調用,或者通過傳遞這個參數作爲ref或out參數。
你能否提供一個結構和類的例子來說明這一點。
在MSDN文章的情況下:含義「這」在結構和
在一個類的實例的構造或實例函數成員,這 被歸類爲一個值。因此,雖然這可以用於將 引用到調用該函數成員的實例,但並不是 可能在類的函數成員中分配給此實例。在結構的一個 實例構造函數中,這對應於結構類型的輸出參數 ,並且在 結構的實例函數成員內,這對應於結構類型的ref參數。在 這兩種情況下,這被分類爲一個變量,並且有可能通過 修改整個結構體的功能成員被調用,或者通過傳遞這個參數作爲ref或out參數。
你能否提供一個結構和類的例子來說明這一點。
在一個類中,this
關鍵字指的是類的當前實例,或者調用了特定方法的實例。 您也可以在結構中使用this
關鍵字,它將引用結構的當前實例。
用法中的結構:
在下面的例子中,this
關鍵字用於指該結構的當前實例的字段,以從具有相同的名稱的輸入參數區分它們。在類
public struct BoxSize
{
public double x;
public double y;
public double z;
public bool HasBiggerVolume(double x, double y, double z)
{
if ((this.x * this.y * this.z) > (x * y * z))
return true;
else
return false;
}
}
用法:
class student
{
int id;
String name;
student(int id,String name)
{
id = id;
name = name;
}
void display()
{
Console.WriteLine(id+" "+name);
}
public static void main()
{
student s1 = new student(1,"NameA");
student s2 = new student(2,"NameB");
s1.display();
s2.display();
}
}
輸出將是:
0 null
0 null
解該問題:
class Student
{
int id;
String name;
student(int id,String name)
{
this.id = id;
this.name = name;
}
void display()
{
Console.WriteLine(id+" "+name);
}
public static void main()
{
Student s1 = new Student(1,"NameA");
Student s2 = new Student(2,"NameB");
s1.display();
s2.display();
}
}
輸出將是:
1 NameA
2 NameB
僅供參考,此處給出了6個用法this
關鍵字。
this
關鍵字可用於引用當前類實例變量。
this()
可以用來調用當前類的構造函數。
this
關鍵字可以被用來調用當前類的方法(隱式地)
this
可以如在該方法調用中的參數傳遞。
this
可以在構造函數調用中作爲參數傳遞。
this
關鍵字也可以用來返回當前的類實例。
在Google上沒有一個「面向對象的編程教程」結果給出了你喜歡的答案? –