c#参数修饰符-out

out 关键字经过引用传递参数。c#

方法定义和调用方法必须显式使用out关键字;优化

调用方法时参数没必要初始化,方法内必须对其赋值;spa

参数中能够声明多个out修饰的参数。code

例:blog

public void UseOut( out int num)
{
  //必须对参数num赋值
  num = 20;
}

public void Index()
{
  //声明num不用必须初始化
   int num;
   UseOut(out num);
        
   //输出20
   Response.Write(num);
}

 

将上述代码改成:string

public void UseOut( out int num)
{
  //必须对参数num赋值
  num = 20;
}

public void Index()
{
  //声明num不用必须初始化
   int num;
   UseOut(out num);
        
   //输出True
   Response.Write(num==20);
}

上述例子引出“重试模式”的概念,这里不做阐述,重试模式返回一个boo,表示操做成功与否。许多分析方法(好比DataTime.TryParse)用到了此模式。it

 

int.TryParse()在c#7.0上的优化(这里只是用带out的int.TryParse()方法举例)class

c#6.0以前的语法语法

string number = "123";
int num;
int.TryParse(number, out num);

c#7.0以后的语法引用

string number = "123";
int.TryParse(number,out int num);

OR

string number = "123";
int.TryParse(number,out var num);

关于out关键字先写到这里了。

相关文章
相关标签/搜索