C#的this關(guān)鍵字的2種用法
在使用C#
的過(guò)程中,發(fā)現(xiàn)this
關(guān)鍵是比較少用的,但是在下面這三個(gè)場(chǎng)合下是必須要使用的,不使用它是解決不了問(wèn)題。
第一種場(chǎng)合就是當(dāng)類成員變量的名稱與函數(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ū)分到底是那一個(gè)名稱,就需要類里的成員變量增加一個(gè)this
指針,這個(gè)指針就可以指明引用的名稱是來(lái)自于類,而不是函數(shù)的參數(shù),從而達(dá)到區(qū)分的目的。很多情況之下,可以在函數(shù)里寫成員不一樣的名稱,就不用這樣來(lái)處理了。
第二種場(chǎng)合就是將當(dāng)前的對(duì)象當(dāng)作參數(shù)傳送給別的函數(shù)。
CalcTax(this);
調(diào)函數(shù)CalcTax
是一個(gè)類函數(shù)內(nèi),那么要本身傳送給別人,只能使用this
引用了,只有它是用來(lái)標(biāo)記自己的變量。
class Employee { private string name; private string alias; private
到此這篇關(guān)于C#的this關(guān)鍵字的2種用法的文章就介紹到這了,更多相關(guān)C#的this關(guān)鍵字用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于C#中GUI編程的標(biāo)準(zhǔn)事件問(wèn)題
這篇文章主要介紹了C#中GUI編程的標(biāo)準(zhǔn)事件,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01C# MJPEG 客戶端簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要介紹了C# MJPEG 客戶端簡(jiǎn)單實(shí)現(xiàn)的方法,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下2021-03-03C#對(duì)XmlHelper幫助類操作Xml文檔的通用方法匯總
該篇文章主要總結(jié)的是自己平時(shí)工作中使用頻率比較高的Xml文檔操作的一些常用方法和收集網(wǎng)上寫的比較好的一些通用Xml文檔操作的方法,對(duì)C#?XmlHelper幫助類操作Xml文檔相關(guān)知識(shí)感興趣的朋友一起看看吧2022-03-03