C中this指標的用法

2022-05-02 09:51:37 字數 1108 閱讀 1236

1樓:匿名使用者

this 關鍵字引用類的當前例項,還可用作擴充套件方法的第乙個引數的修飾符。

以下是 this 的常用用途:

限定被相似的名稱隱藏的成員,例如:

public employee(string name, string alias)

將物件作為引數傳遞到其他方法,例如:

calctax(this);

宣告索引器,例如:

public int this [int param]

set}由於靜態成員函式存在於類一級,並且不是物件的一部分,因此沒有 this 指標。在靜態方法中引用 this 是錯誤的。

示例在本例中,this 用於限定 employee 類成員 name 和 alias,它們都被相似的名稱隱藏。this 還用於將物件傳遞到屬於其他類的方法 calctax。

// keywords_this.cs

// this example

using system;

class employee

// printing method:

public void printemployee()

\nalias: ", name, alias);

// passing the object to the calctax method by using this:

console.writeline("taxes: ", tax.calctax(this));

}public decimal salary}}

class tax

}class mainclass}輸出

name: mingda pan

alias: mpan

taxes: $240.00

2樓:

this有兩種意義

一種是指當前物件,一般可省略,但當當前物件的某個屬性和當前的區域性變數的某個識別符號名稱相同,在使用物件的屬性時就需要用 this.屬性名 來取到該屬性

另一種是指構造方法,在編寫構造方法時呼叫另乙個構造方法寫法如下:

class a

public a(string a,string b):this(a)}

C 中getline的用法,C 中,getline函式的詳解

getline 語法 用getline 讀取字元到buffer中,buffer在 中通常體現為乙個字元陣列,streamsize num是一次讀入多少個字元,num 1個字元已經讀入,當碰到乙個換行標誌,碰到乙個eof,或者任意地讀入,直到讀到字元delim。delim字元不會被放入buffer中。...

指標陣列函式的用法

應該這樣定義 const int temp int a,int b 但是函式不能返回一個陣列.這樣也編不過. 請參考 include const int fun1 int a,int b const int fun2 int a,int b typedef const int fun int a,i...

二級指標的用法,(C ) 如何用二級指標指向二維陣列?

用記憶體位址去理解吧,一級指標是指向定義型別的記憶體位址,二級指標就是指向定義型別的記憶體位址所指向的新的記憶體位址。我舉乙個例子。include void main char p int n printf 請輸入日期 n scanf d n printf 對應英語日期 s n p n 1 p n ...