C#学习笔记--方法和参数修饰符

一、学习内容

构造C#方法的各种细节;

out、ref和params关键字;

.net 4引入的新特性:可选参数和命名参数。

 

二、方法的参数修饰符

1.无修饰符

一个方法的参数没有用参数修饰符标记,则它将按值传递,这意味着被调用的方法将得到它的一个副本。

这是最普通、常见的一种参数标记形式。

 

2.out修饰符

当用out修饰某个参数时,相当于该参数是这个方法的输出参数;

它是按照引用传递,而非按值传递;

被调用的方法必须为该参数赋值,否则在编译时就会报错;

调用一个有out参数的方法时,也必须使用out修饰符;

调用一个有out参数的方法时,可以不事先为该参数赋值,因为被调用方法会为它赋值;

它最重要的应用是:可以在一个方法中返回多个值。

 

3.ref修饰符

这是一种按引用传递值的方法‘;

如果你希望传递给被调用方法的参数会在方法中改变值,而不是一个副本的话,可以将该参数声明为ref;

此参数在方法调用前必须已经赋值,与out修饰符截然不同;

 

4.params修饰符

把可变数量的参数(这些参数应该是相同类型)作为单个逻辑参数传给方法,类似于数组;

被调用方法中应该把params修饰的参数当做一个数组来处理,同时支持0个输入参数;

一个方法最多只能支持一个params参数,且该参数必须是参数列表中的最后一个参数;

这项技术只是方便了调用者。

 

三、.net 4 新特性

1.可选参数

就是只某个参数在方法声明中已经指明了具有某个默认值;

可选参数的值必须在编译时就能确定,而不能在运行时确定,否则编译报错;

可选参数若放在非可选参数的前面也将导致编译报错。

 

2.命名参数

允许在调用方法时以任意顺序指定参数的值;

在调用的过程中,命名参数必须放在方法调用的最后;

可选参数往往和命名参数一起使用;

 

可选参数和命名参数的支持主要是为了简化与COM的互操作。

 

成员重载:

确保每个方法都有不同的参数组:个数不同,或类型不同;只是返回类型不同的成员不够唯一,不满足条件。

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值