当前位置: 首页 > wzjs >正文

自己电脑做服务器搭网站上海sem

自己电脑做服务器搭网站,上海sem,网站开发与网站制作,ppt网站超链接怎么做C#知识:函数简介及函数重载 本文主要介绍函数参数和函数重载相关的知识点 1、函数 函数一般写在类中 一般函数调用 static int Add(int num, int value){num value;return num;}//一般函数调用,发生值类型参数的复制int num 1;Add(num, 1); //调用…

C#知识:函数简介及函数重载

本文主要介绍函数参数和函数重载相关的知识点


1、函数

  • 函数一般写在类中

  • 一般函数调用

        static int Add(int num, int value){num += value;return num;}
            //一般函数调用,发生值类型参数的复制int num = 1;Add(num, 1);    //调用 Add(int num, int value)Console.WriteLine(num); //1

2、ref和out

2.1 ref

  • 必须初始化,它变我也变
  • 类似C++中的引用,不需要在被调用函数中赋值
  • ref函数形参不能有默认值
        static int Add(ref int num, int value){num += value;return num;}
            int num2 = 1;Add(ref num2, 1);   //调用 Add(ref int num, int value)Console.WriteLine(num2);    //2

2.2 out

  • 可以不初始化,它变我也变
  • 需要在被调用函数中赋值
  • out函数形参不能有默认值
        static int Add2(out int num, int value){num = 100;num += value;   return num;}
            int num3 = 2;   //这个赋值没啥子用,在被调用函数值又会重新赋值Add2(out num3, 2);  //调用 Add2(out int num, int value)Console.WriteLine(num3);    //102

3、params变长参数

  • 在函数调用时,可以传入多个相同类型的实参
  • 只能有一个形参为params类型,且必须是最后一个
        static int Add(int num, params int[] values){foreach (int value in values) { num += value;}return num;}
            int num4 = Add(0, 1, 2, 3); //调用 Add(int num, params int[] values)Console.WriteLine(num4);    //6

4、默认参数

  • 可以为多个形参设置默认值,但是有默认值的形参后面所有形参必须都有默认值
        static int Add3(int num, int value = 1){num += value;return num;}
            int num5 = Add3(20);    //调用 Add3(int num, int value = 1)Console.WriteLine(num5);    //21

5、函数重载

  • 方法签名不同(参数类型或参数个数不同)的同名函数构成重载
  • ref int 或者out int 可以和 int 构成重载
  • ref 与 out 不存在重载
  • params int[]可以和 int 构成重载
  • params int[] 不能与 int[] 构成重载
  • 默认值不构成重载
        static int Add(int num, int value){num += value;return num;}//ref int 可以和 int 构成重载static int Add(ref int num, int value){num += value;return num;}//ref 与 out 不存在重载//static int Add(out int num, int value)//{//    num += value;//    return num;//}static int Add2(out int num, int value){num = 100;num += value;   return num;}// params int[]可以和 int 构成重载static int Add(int num, params int[] values){foreach (int value in values) { num += value;}return num;}//params int[] 不能与 int[] 构成重载//static int Add(int num, int[] values)//{//    foreach(int value in values)//    {//        num += value;//    }//    return num;//}//默认值不构成重载//static int Add(int num , int value = 1)//{//    num += value;//    return num;//}static int Add3(int num, int value = 1){num += value;return num;}

6、完整代码示例:

namespace FunctionOverloading
{internal class Program{static int Add(int num, int value){num += value;return num;}//ref int 可以和 int 构成重载static int Add(ref int num, int value){num += value;return num;}//ref 与 out 不存在重载//static int Add(out int num, int value)//{//    num += value;//    return num;//}static int Add2(out int num, int value){num = 100;num += value;   return num;}// params int[]可以和 int 构成重载static int Add(int num, params int[] values){foreach (int value in values) { num += value;}return num;}//params int[] 不能与 int[] 构成重载//static int Add(int num, int[] values)//{//    foreach(int value in values)//    {//        num += value;//    }//    return num;//}//默认值不构成重载//static int Add(int num , int value = 1)//{//    num += value;//    return num;//}static int Add3(int num, int value = 1){num += value;return num;}static void Main(string[] args){//函数一般写在类中//一般函数调用,发生值类型参数的复制int num = 1;Add(num, 1);    //调用 Add(int num, int value)Console.WriteLine(num); //1//ref和out//ref//必须初始化,它变我也变//类似C++中的引用,不需要在被调用函数中赋值//ref函数形参不能有默认值int num2 = 1;Add(ref num2, 1);   //调用 Add(ref int num, int value)Console.WriteLine(num2);    //2//out//可以不初始化,它变我也变//需要在被调用函数中赋值//out函数形参不能有默认值int num3 = 2;   //这个赋值没啥子用,在被调用函数值又会重新赋值Add2(out num3, 2);  //调用 Add2(out int num, int value)Console.WriteLine(num3);    //102//params变长参数//在函数调用时,可以传入多个相同类型的实参//只能有一个形参为params类型,且必须是最后一个int num4 = Add(0, 1, 2, 3); //调用 Add(int num, params int[] values)Console.WriteLine(num4);    //6//默认参数//可以为多个形参设置默认值,但是有默认值的形参后面所有形参必须都有默认值int num5 = Add3(20);    //调用 Add3(int num, int value = 1)Console.WriteLine(num5);    //21}}
}

7、参考资料

  1. 《唐老狮C#基础》

本篇结束,感谢您的阅读~

在这里插入图片描述

http://www.dtcms.com/wzjs/524393.html

相关文章:

  • 做网站收益小说关键词提取软件
  • 哪些php网站河北网站优化公司
  • 网站登录界面图片用什么软件做视频广告
  • 可以帮忙做网站做公司百度百度一下官网
  • 做网站要学一些什么网络推广的方式
  • 怎么做有数据库的网站青岛seo推广
  • 郑州广告公司网站建设百度贴吧广告投放价格
  • 个人网站建设的流程百度云资源搜索引擎入口
  • 网站建设展示型是什么网站模板购买
  • 青岛网站设计建立公司青海seo关键词排名优化工具
  • 网站建设的完善优化软件seo排名
  • 公众号中做微网站百度一下你就知道主页
  • 西安做网站公司哪家好互联网推广平台有哪些
  • 淘宝做任务赚钱网站谷歌google play官网
  • 商户网站建设公司5118关键词挖掘工具
  • 深圳手机报价网站青岛百度网站排名优化
  • 推广及建设网站北京网站优化公司哪家好
  • 网站的基本结构品牌推广经典案例
  • 大连做网站制作seo团队管理系统
  • 綦江中国建设银行官网站今天刚刚发生的新闻事故
  • 中小型网站有哪些成功营销案例分享
  • 网站可以做315认证吗百度我的订单查询
  • 做网站建设有哪些公司余姚网站seo运营
  • 石家庄电子商务网站建设福建百度开户
  • 网站常用的中文字体新闻近期大事件
  • 什么网站空间稳定湖南网站seo营销
  • 济南建设网站制作关键词数据分析工具有哪些
  • 怎么在中国做网站赌博百度关键词优化策略
  • 云校网站建设找广告商的平台
  • 邯郸做移动网站哪儿好友链交换