黑马程序员--输出参数(out parameter)和引用参数(ref parameter)

     

  ---------------------- .Net培训、WP7培训、期待与您交流!----------------------

 

  我们都知道C#语言是严格面向对象的,但是在设计类时,类里的成员方法还是面向过

程的,函数只能有一个返回值,为了解决这个问题,引入了输出参数和引用参数机制,这

样一个函数理论上说就可以有任意多个返回值了,但是,为了保证程序的结构化,还是不

要把参数设置过多。下面是个小例子,简单介绍了输出参数和引用参数的用法和区别,以

及需要注意的地方。

        static void Main(string[] args)
{
int number; //使用前可以不必赋值 因为后面有TestOut将其作为输出参数了,
//下面做为引用参数时就不会出现编译错误了
//只有输入输出类型不同,不能作为重载,所以用了TestOut和TestRef
TestOut(out number);
TestRef(ref number);
Console.WriteLine("number:" + number);
}
static void TestRef(ref int a) {
int b = a;
a = 500;
Console.WriteLine("b:{0}",b);
Console.WriteLine("a:{0}",a);
}
static void TestOut(out int a) {
a = 200;
}

  

  变量在使用前一般需要对其赋值,如果在变量声明后面,将其作为输出参数传递给

某个函数,此变量就不必赋值了,但是要是作为引用参数,则必须对其赋值,即初始化。

 

从字面理解:

out: 输出,意思是调用某个函数后才能得到其值,所以不必有初值,它是用来接收被调用

   函数内部的某个变量的值的,所以这个参数在被调用函数里一定要得到一个值。如果

   学过SQL存储过程,就容易理解了。

ref: (reference)引用,即引用一个已经存在的东东,所以被引用的变量必须初始化,如

  果接触过C++,就好理解了,引用就是获得变量的地址,对变量内容共享,荣辱与共,

  肝胆相照。

 

该程序运行结果为:

b:200

a:500

number:500

    ---------------------- .Net培训、WP7培训、期待与您交流!----------------------

 

转载于:https://www.cnblogs.com/dongzhi0000/archive/2011/11/29/2268197.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值