详细内容请参见《C#入门经典(第4版)》p101页

1、参数匹配

在调用函数时,必须使参数与函数定义中指定的参数完全匹配,这意味着要匹配参数的类型、个数、和顺序。

注:函数签名由函数的名称和参数定义。

2、参数数组

C#允许喂函数指定一个(只能指定一个)特定的参数,这个参数必须是函数定义中的最后的一个参数,称为参数数组。参数数组可以使用个数不定的参数调用函数,它可以使用params关键字来定义。

注:参数数组特别适合于为在处理过程中要使用的函数指定其他信息。

示例代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace TestParams
{
class Program
{
static int SumValus(params int[] vals)
{
int sum = 0;
foreach (var val in vals)
{
sum += val;
}
return sum;
}
static void Main(string[] args)
{
int sum = SumValus(1,3,7,8);
Console.WriteLine("Summed values = {0}",sum);
Console.ReadKey();
}
}
}

运行结果:

3、引用参数和值参数

值参数:在使用参数时,把一个值传递给函数使用的变量。对函数中此变量的任何修改都不影响函数调用中指定的参数。

引用参数:函数处理的变量与函数调用中使用的变量相同,而不仅仅是值相同的变量。因此,对这个变量的任何修改都会影响用作参数的变量值。

应用参数的使用:

(1)在函数定义中使用ref关键字指定参数。

(2)在函数调用中(这事必须的,因为ref参数是函数签名的一部分)再次指定参数。

注意:用作ref参数的变量有两个限制:

(1)函数可能会改变引用参数的值,所以必须在函数中调用变量(不可以引用常量)。

(2)必须使用初始过的变量。C#不允许假定ref参数在它的函数中初始化。

4、输出参数

除了根据引用传递值之外,还可以使用out关键字,指定所指参数是一个输出参数。详细内容请参见《C#入门经典(第4版)》p106页

最新文章

  1. 初步涉及JDBC
  2. Create New Commands in Tcl
  3. qq邮箱邮我组件
  4. 【C#进阶系列】03 配置文件管理与程序集的引用版本重定向
  5. IOS Quartz2D 通过UIColor生成图片
  6. 【原】iOS动态性(一):动态添加属性的方法——关联(e.g. 向Category添加属性)
  7. GitHub超详细图文攻略
  8. 简单分析下用yii2的yii\helpers\Html类和yii.js实现的post请求
  9. [SDOI2014]重建
  10. coco2dx添加类报错
  11. Heartbeat实现集群高可用热备
  12. _C#发送邮箱
  13. 如何开启红米手机4X的ROOT超级权限
  14. 2019-2-13TextBox技巧
  15. 分布式系统监视zabbix讲解八之自动发现/自动注册--技术流ken
  16. Jenkins以root用户运行的方法
  17. Js 向表单中添加多个元素
  18. MongoDb进阶实践之一 如何在Linux系统上安装和配置MongoDB
  19. 编程四剑客sed-2019.2.20
  20. 关于ubuntu14.04,忘记root密码解决方案(经测试,内核3.13和4.2可行)。

热门文章

  1. 配置我的Ubuntu Server记(包括桌面及VNC,SSH,NTP,NFS服务) good
  2. .NET Core 微服务之Polly熔断策略
  3. Go语言学习——彻底弄懂return和defer的微妙关系
  4. 编解码器之战:AV1、HEVC、VP9和VVC
  5. Spring 5.x 、Spring Boot 2.x 、Spring Cloud 与常用技术栈整合
  6. java多线程死锁
  7. 【工具】读取proprtties工具类
  8. 机器学习经典算法之EM
  9. Java基本数据类型之间转换
  10. 常用的方法论-Q12