C# 中 out 和 ref 關鍵字的區別
out 關鍵字
out 關鍵字用於將引數作為引用型別傳遞給方法,主要用於方法需要返回多個值的情況。ref 關鍵字也用於將引數作為引用型別傳遞給方法,用於在方法中修改現有變數。以下是 C# 中 ref 和 out 關鍵字的有效用法。
示例
using System.IO;
using System;
public class Program {
public static void update(out int a){
a = 10;
}
public static void change(ref int d){
d = 11;
}
public static void Main() {
int b;
int c = 9;
Program p1 = new Program();
update(out b);
change(ref c);
Console.WriteLine("Updated value is: {0}", b);
Console.WriteLine("Changed value is: {0}", c);
}
}輸出
Updated value is: 10 Changed value is: 11
以下是 ref 和 out 關鍵字之間的一些重要區別。
| 序號 | 關鍵 | ref 關鍵字 | out 關鍵字 |
|---|---|---|---|
| 1 | 用途 | 當被呼叫方法需要更新傳遞的引數時,使用 ref 關鍵字。 | 當被呼叫方法需要更新傳遞的多個引數時,使用 out 關鍵字。 |
| 2 | 方向 | ref 關鍵字用於雙向傳遞資料。 | out 關鍵字用於單向獲取資料。 |
| 3 | 初始化 | 在將變數作為 ref 傳遞之前,需要對其進行初始化,否則編譯器會丟擲錯誤。 | 如果使用 out 關鍵字,則無需初始化變數。 |
| 4 | 初始化 | 在被呼叫方法中,無需初始化作為 ref 傳遞的引數。 | 在被呼叫方法中,需要初始化作為 out 傳遞的引數。 |
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP