c中out的用法
c中out的用法
下面小編就跟你們詳細(xì)介紹下c中out的用法的用法,希望對你們有用。
c中out的用法的用法如下:
在C#這門高級語言中,你是否注意過ref與out的用法?你是否為在調(diào)用方法時需要多個返回值呢?不用急,接下來,我們?nèi)ヒ黄鹑パ芯恳幌逻@個問題。。。
其實呢,C#語言中,參數(shù)的傳遞一共有兩種方法,值傳遞和引用傳遞。
而ref與out這兩種方式都屬于引用傳遞,只是他們的用法稍有不同。
ref的特點是有進(jìn)有出,即在傳遞參數(shù)之前就已經(jīng)對它進(jìn)行賦值,在傳入方法體時,是將該數(shù)的地址傳了進(jìn)來,如果對其進(jìn)行相應(yīng)的賦值操作,直接改的是地址里的值,所以,當(dāng)該方法執(zhí)行完,該數(shù)的值也就跟著改變了。
代碼如下:
static void Main(string[] args)
{
int i = 10;
FF( ref i);
Console.WriteLine(i);
}
static void FF(ref int i)
{
i = i + 1;
}
而out與ref的唯一區(qū)別是,在方法接收參數(shù)后,對它進(jìn)行初始化(如果沒有初始化,將會報錯的),其余的用法都和ref一樣。
代碼如下:
static void Main(string[] args)
{
int i ;
FF( out i);
Console.WriteLine(i);
}
static void FF(out int i)
{
i=10; //如果沒有這個賦值,系統(tǒng)將會報錯的
i = i + 1;
}
其實,個人認(rèn)為,在平時用的時候,ref與out的區(qū)別并沒有那么明顯,從性能上分析的話,有時out會好點。