【C#】函数

为什么使用函数

1.提供一个套路,使某段代码对不同数据执行相同的操作;

2.函数可以使代码的可读性更高,写代码更简单

函数体

定义和使用函数

//定义函数
static<returnType><FunctionName>(<paramType><paramName>,...)
{
    ...
    return <returnValue>
}

//使用函数
static void Main()
{
    Write();
}

1.关键字static是与面向对象的概念有关

2.关键字void表明函数没有返回值

3.括号中的为参数,每个参数都有一个类型和名称,每个参数在函数代码中都用作一个变量

返回值

通过函数进行数据交换的最简单的方式是利用返回值。与变量一样,返回值也有数据类型。

string myString;
myString=getString();//getString为一个函数,返回值为字符串类型

当函数返回一个值时,可以用下面两种方式修改函数:

1.在函数声明中指定返回值的类型,但不是关键字void;

2.使用return关键字结束函数的执行,把返回值传送给调用代码

参数
static double product(double param1,double param2)
{
    return param1*param2;
}

1.参数匹配,在调用函数时,必须使参数与函数定义中指定的参数完全匹配,包括类型、个数和顺序

2.使用参数数组,可以是个数不定的参数调用函数,用params关键字定义

3.通过引用传递参数,可以使函数处理的变量与函数调用中使用的变量相同,用ref关键字指定参数

static void showDouble(ref int val)
{
    val*=2;
    Console.WriteLine("val doubled={0}",val);
}
static void Main()
{
    int myNumber=5;
    Console.WriteLine("myNumber={0}",myNumber);
    showDouble(ref myNumber);//myNumber被showDouble()修改了
    Console.WriteLine("myNumber={0}",myNumber);
    Console.ReadKey();
}

4.引用输出参数,也可以实现第三点的效果,使用out关键字

变量的作用域

C#中变量仅能从代码的本地作用域访问,所以我们才需要利用函数进行数据交换。

1.局部变量的作用域为某一个函数

2.全局变量的作用域可以覆盖几个函数

结构函数

结构函数的一个重要的功能就是结构可以包含函数和数据。

struct CustomerName
{
    public string firstName;
    public string lastName;
    public strng GetName()
    {
        return firstName+""+lastName;
    }
}

重载

我们在调用函数时,必须使用匹配函数参数类型的变量,那处理不同类型的变量时就需要多个函数,而函数重载就是创建多个同名的函数,这些函数可使用不同的参数类型。

static int MaxValue(int[] intArray)
{
    ...
    return;
}
static double MaxValue(double[] doubleArray)
{
    ...
    return;
}

委托

委托是一种存储函数引用的类型,定义指定了一个返回类型和一个参数列表,定义委托之后,就可以声明改委托类型的变量,可以把一个返回类型个参数列表和委托一样的函数赋值给这个变量。
委托的使用分两步:

  • 定义
  • 声明变量
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值