C#的this關鍵字的2種用法
在使用C#
的過程中,發(fā)現(xiàn)this
關鍵是比較少用的,但是在下面這三個場合下是必須要使用的,不使用它是解決不了問題。
第一種場合就是當類成員變量的名稱與函數(shù)的參數(shù)名稱一樣
比如下面這種情況:
public class Employee { private string alias; private string name; public Employee(string name, string alias) { // Use this to qualify the members of the class // instead of the constructor parameters. this.name = name; this.alias = alias; } }
這里可以看到類成員變量的名稱為alias
,而構(gòu)造函數(shù)的名稱也是alias
,編譯器要區(qū)分到底是那一個名稱,就需要類里的成員變量增加一個this
指針,這個指針就可以指明引用的名稱是來自于類,而不是函數(shù)的參數(shù),從而達到區(qū)分的目的。很多情況之下,可以在函數(shù)里寫成員不一樣的名稱,就不用這樣來處理了。
第二種場合就是將當前的對象當作參數(shù)傳送給別的函數(shù)。
CalcTax(this);
調(diào)函數(shù)CalcTax
是一個類函數(shù)內(nèi),那么要本身傳送給別人,只能使用this
引用了,只有它是用來標記自己的變量。
class Employee { private string name; private string alias; private
到此這篇關于C#的this關鍵字的2種用法的文章就介紹到這了,更多相關C#的this關鍵字用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!