out關鍵字與ref關鍵字很相似,out關鍵字也會導致參數通過引用來傳遞,與ref關鍵字不同,ref關鍵字要求變量必須在傳遞之前進行初始化,out關鍵字不要求變量在傳遞之前必須進行初始化,但是必須在方法中爲變量賦值,如果使用out關鍵字,方法定義和調用方法都必須顯示的使用out關鍵字
注意
1:如果在方法體中沒有爲out參數賦值,那麼將無法編譯
什麼時候使用out參數呢?
在方法中傳遞參數時使用out關鍵字,表示這個變量要回傳值,例如一個除法方法同時得到商數和餘數,但是普通的方法只能返回一個值,這個時候可以使用out參數,把另外一個值也返回,當然除了這種方法,讓返回值是一個數組也行,也可以返回多個值
實例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _6_out
{
class Program
{
static void Main(string[] args)
{
int i = 15;
int j = 6;
int yushu;
Person person = new Person();
Console.WriteLine("{0}/{1}={2}——{3}", i, j, person.GetShangAndYu(i, j, out yushu), yushu);
Console.ReadKey();
}
}
class Person
{
public int GetShangAndYu(int i,int j,out int yushu)
{
yushu = i % j;
return i / j;
}
}
}
運行效果