函数

一、C#的函数包括实函数和虚函数两大种

1、实函数:指在执行函数后,能够返回一个具体变量的值或引用的函数。

    (1) 定义:[函数修饰符]  返回值类型  实例名称  (函数参数......)

              {

                     执行语句

                     返回值

               }

         例:double average (double a,double b)

               {

                      double ave =(a+b)/2;

                       return ave;

                }

    (2) 调用:实函数返回值为一具体变量,因此在调用实函数时,应该将其作为变量,放在表达式中使用。

     如:double a = min (19,22)+5;//min 为一实函数

           Console .WriteLine(a);//输出:24

    (3) 返回值:函数终止的语句块 包括返回表达式和分支结构的返回值等

2、虚函数:是面向对象编程的一种重要理念,用于表示一个整体数据处理的过程,函数仅仅对外部数据进行处理,不返回任何数据。

     (1)定义:与实函数区别在于函数的数据类型以及最终没有包含返回值

         例:double ave=0;

               void average (double a, double b)

               {

                       ave=(a+b)/2;

                }

       (2)、调用:虚函数是没有返回值的函数,其本身往往只表示一个处理数据的过程,因此在调用虚函数时,不能将其作为一个值来使用,但可以将其作为一个执行命令。

            在调用函数时,需要在程序main()入口函数外部先声明各种变量,然后再在main()入口函数内执行函数,最后通过Console,WriteLine()方法输出结果。如:

       class Program
    {
        private static void and(int arg1, int arg2)
        {
            c = arg1 + arg2;
        }
        private static int a = 5, b = 7, c;
        static void Main(string[] args)
        {
            and(a, b);
            Console.WriteLine(c);
            Console.ReadLine();
        }
    }

   (3)、返回值:虚函数是没有返回值得。但在编写时,也可以使用return语句实现返回,且虚函数的return语句后面不跟一个具体的值,遇到return语句立即强制中断函数的执行,返回上一级别语句块,后边的代码不起作用。

二、函数的参数

具体情况可查阅:http://leafwf.blog.51cto.com/872759/185723

1、引用参数:当将一个引用型实参传递给某个函数时,程序将把实际值在内存中的地址传递给引用形参,这时,对形参变量所代表的值的任何更改都会影响到实参变量所代表的值

     要使用引用参数,在编写函数时需要在参数前添加ref 关键字,在引用函数时参数前也需要添加ref 关键字,以识别参数的引用性质。如:

 class Program
    {
        static  bool blData;
        static void not(ref bool blData)
        {
            blData = !blData;
            Console.Write(blData +",");
            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            bool data = true;
            Console.WriteLine(data + ",");
            not(ref data);
            Console.WriteLine(data + ",");
            Console.ReadLine();
        }               输出:true,false,false

2、输出参数:允许通过函数的输出参数与外部的代码进行通信,也就是将参数作为函数的输出值与外部代码进行通信。使用输出参数可通过一个函数输出多个值。

3、不定参数:在使用函数时,为函数定义任意数量的参数,并将函数的所有参数视为数组。

原文地址:https://www.cnblogs.com/hnzsb-vv1130/p/3819904.html