out

C#中的out

示例

當希望方法返回多個值時,聲明 out方法很有用。使用 out參數的方法仍然可以將變數用作返回類型(請參見 return),但它還可以將一個或多個對象作為 out參數返回給調用方法。此示例使用 out在一個方法調用中返回三個變數。請注意,第三個參數所賦的值為 Null。這樣便允許方法有選擇地返回值。

目錄

正文


操作介紹
out關鍵字會導致參數通過引用來傳遞。這與 ref關鍵字類似,不同之處在於 ref要求變數必須在傳遞之前進行初始化。若要使用 out參數,方法定義和調用方法都必須顯式使用 out關鍵字。例如:
儘管作為 out參數傳遞的變數不需要在傳遞之前進行初始化,但需要調用方法以便在方法返回之前賦值。
ref和 out關鍵字在運行時的處理方式不同,但在編譯時的處理方式相同。因此,如果一個方法採用 ref參數,而另一個方法採用 out參數,則無法重載這兩個方法。例如,從編譯的角度來看,以下代碼中的兩個方法是完全相同的,因此將不會編譯以下代碼:
但是,如果一個方法採用 ref或 out參數,而另一個方法不採用這兩類參數,則可以進行重載,如下所示:
備註
屬性不是變數,因此不能作為 out參數傳遞。
複製