`

参数(ref,out,params)

    博客分类:
  • C#
阅读更多
参数:类的成员方法中的参数。

值参数:不能改变实参。无关键字
引用参数:改变实参。ref
输出参数:用于输出的参数。out(如果要有多个返回值,可以用)
参量参数:参数个数不确定。params(采用数组的方式)

params:
y=sum(1,2);
y=sum(1,2,3);
y=sum(1,2,3,4);

值参数实例:
public int Add(int x,int y){
	x=10000;
	y=88888;
	int ans=x+y;
	return ans;
}

int x=9,y=10;
MessageBox.Show(x+","+y);
Add(x,y);
MessageBox.Show(x+","+y);
结果:
9,10
9,10
引用参数实例:
public void SwapStrings(ref string s1,ref string s2){
	string tempStr=s1;
	s1=s2;
	s2=tempStr;
}
string s="Frist";
string s2="Second";
MessageBox.Show(s+","+s2);
SwapStrings(ref s,ref s2);
MessageBox.Show(s+","+s2);
结果:
First,Second
Second,First

输出参数实例:
public void add(int x,int y, out int ans)
{
	ans=x+y;
}

int ans;
add(90,90,out ans);
MessageBox.Show(ans);


输出结果:180

参量参数实例:

public double CalculateAverage(params double[] values)
{
	double sum=0;
	for(int i=0;i<values.Lenght;i++)
		sum+=values[i];
	return (sum/values.Lenght);
}
double average;
average=CalculateAverage(4.0,3.2,5.7);
MessageBox.Show(average);
结果:4.3
double[] data={4.0,3.2,5.7};
average=CalculateAverage(data);
MessageBox.Show(average);
结果:4.3
分享到:
评论

相关推荐

    Unity3D教程:ref 、out、params参数区别1

    在Unity3D编程中,了解如何使用`ref`、`out`和`params`这些特殊的参数修饰符是非常关键的,因为它们能让你更灵活地处理方法间的参数传递。接下来我们将详细探讨这三个关键字的区别和应用场景。 首先,`ref`关键字...

    C#中ref,out和params有什么区别

    在C#编程语言中,`ref`、`out`和`params`是三种不同的参数修饰符,它们分别用于控制方法如何处理传入的参数。这些关键字在不同的场景下提供了非常有用的功能,使得开发者能够更加灵活地编写代码。 #### 二、`ref` ...

    基于params,ref,out的参数问题详解

    最近在写程序时遇到params,ref,out 参数问题。回头有自习看了看MSDN,才巩固了基础。现在和大家分享一下。paramsparams 关键字在方法成员的参数列表中使用,为该方法提供了参数个数可变的能力,它在只能出现一次...

    WebServiceRef, Out, Params

    【WebServiceRef, Out, Params】是与.NET框架中方法参数传递相关的概念,它们在编程中扮演着重要角色,尤其在远程通信和数据交互时。理解这些概念有助于编写更高效、更灵活的代码。 首先,Remoting是.NET Framework...

    asp.net(c#)ref,out ,params的区别

    在C#编程语言中,`ref`、`out`和`params`是三个重要的关键字,它们用于处理方法的参数传递。下面将详细解释这三个关键字的含义、用途以及它们之间的区别。 1. `params` `params`关键字允许方法接受可变数量的参数...

    C#中out参数、ref参数与值参数的用法及区别

    C# 中的参数类型有四种:值参数、ref 参数、out 参数和 params 参数。今天,我们将详细介绍 C# 中的 out 参数、ref 参数和值参数的用法及区别。 值参数 -------- 在使用参数时,把一个值传递给函数使用的一个变量...

    详解C#中三个关键字params,Ref,out

    C# 中的三个关键字:params、ref、out ...params 关键字用于方法参数长度不定的情况,ref 关键字用于引用类型参数,而 out 关键字用于返回多个值。理解这三个关键字的用法和原理对于 C# 开发者非常重要。

    Untiy C#参数修饰符

    本文将深入探讨Unity中的三个主要参数修饰符:`ref`, `out`, 和 `params`。 1. **`ref` 修饰符**: - `ref` 关键字用于当函数需要修改传入的变量值时。在调用方法前,必须对变量进行初始化,因为`ref`参数传递的是...

    C#源代码-out参数的使用.zip

    与`ref`参数类似,`out`参数也要求在调用方法之前必须初始化,但与`ref`不同的是,`out`参数不需要在调用时赋值,可以在方法内部初始化。 2. **使用场景** - 当需要一个方法返回多个值时,`out`参数可以避免创建...

    c#下的各种参数的详细说明与用法

    输出参数使用`out`关键字,它与`ref`类似,也允许函数修改参数的值。不同之处在于,`out`参数在调用函数时不需要初始化,而且函数必须为`out`参数赋值。一个例子如下: ```csharp public int testOut(out int x, ...

    定义一个方法

    下面,我们将详细介绍方法定义的规范、out 参数、ref 参数、params 可变参数、方法的重载概念和方法的递归概念。 方法定义的规范 在定义一个方法时,我们需要注意方法的单一性,即方法中应该只有一个明确的目的或...

    C#难点逐个击破(3):params数组参数

    在`C#难点逐个击破(3):params数组参数`中,我们将深入理解`params`的用法及其与其他参数修饰符如`ref`和`out`的区别。 首先,`params` 关键字只能应用于数组类型的参数,而且在一个方法声明中只能出现一次,并且...

    C#参数使用练习笔记(完全学习笔记)

    要实现按引用传递,需使用ref或out关键字: ```csharp public void ModifyByRef(ref int num) { num = num + 1; } int original = 10; ModifyByRef(ref original); // original现在变为11 ``` 三、可选参数 C#...

    C#中关于方法参数的详解

    在上面的示例中,`PrintNumbers` 方法使用 `params` 关键字来接受任意数量的整数参数,并打印每个参数。 #### 5. 泛型参数(Generic Parameters) 泛型参数允许方法或类具有可变的类型。这提高了代码的复用性和...

    C#应用处理传入参数 - 开源研究

    2. 参数传递方式:C#支持两种参数传递方式——值传递(value)和引用传递(ref或out)。值传递不改变实参的值,而引用传递允许函数修改实参的值。 3. 参数默认值:可以为非必需参数提供默认值,使得调用函数时可以...

    C#中参数数组、引用参数和输出参数示例详解

    输出参数使用out关键字,其效果与引用参数几乎相同,但不同点是:引用参数的实参必须是已经赋值的变量,而输出参数不必。函数使用输出参数时,应该把它看作是未赋值的。例如: ```csharp static int MaxValue (int...

    unity笔记-面对对象,unity

    out、ref、params 是 C# 语言中的三个参数修饰符。out 参数可以返回多个相同类型的值。ref 参数可以将一个变量带入一个方法中进行改变。params 可变参数可以将实参列表中跟可变参数数组类型一致的元素都当做数组的...

    C#程序设计基础教程与实训_陈广C09PPT学习教案.pptx

    - **数组参数(params)**:允许传递可变数量的参数,但只能作为参数列表的最后一个元素,且只能是一维数组,不能与其他修饰符如ref和out一起使用。 4. **方法的重载**: - 方法重载是指在同一类中定义多个同名...

Global site tag (gtag.js) - Google Analytics