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

空间购买网站cps推广平台

空间购买网站,cps推广平台,怎样制作自己网站,wordpress 菜单 分隔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/328833.html

相关文章:

  • wordpress侧边栏折叠八宿县网站seo优化排名
  • 江苏建设教育网首页搜索引擎优化技术有哪些
  • 网站收录量低怎么做北京seo网站设计
  • 网站建设商业计划书范文免费二级域名申请网站
  • 如何创建网站站点并且避免广告天津seo霸屏
  • 盘古网络网站建设如何在手机上制作网站
  • 深圳市住房和建设局网站和市住宅租赁管理服务中心营销推广的主要方式
  • 诸几建设银行网站克州seo整站排名
  • 怎么做视频聊天网站百度提交网址入口
  • 自我介绍网页设计代码聊城seo整站优化报价
  • 网页 网站 站点的区别网站策划运营
  • 苏州有做网站的公司吗日本预测比分
  • 学院网站建设方案 网站内容针对本地的免费推广平台
  • 网站制作微信搜一搜seo
  • 刘强东当年做网站读的什么书关键词搜索排名推广
  • 怎么开通微信小程序商店seo综合查询工具可以查看哪些数据
  • dramwaver做网站疫情最新情况 最新消息 全国
  • 网站建设的流程简答题企业网站模板
  • 网站的橱窗怎么做seo优化一般包括哪些
  • 专做健身餐的网站重庆百度小额贷款有限公司
  • 平面设计免费网站推荐天津百度seo
  • 济南网站地址网站免费进入窗口软件有哪些
  • wordpress阿里云域名转移徐州seo外包公司
  • wordpress产品图片太大网络优化培训
  • 锦州做网站哪家好国内免费域名注册
  • 网站建设存在的问题及建议如何宣传自己的网站
  • web集团网站建设个人免费推广网站
  • 域名可以免费注册吗seo优化网站技术排名百度推广
  • 苏州新区做网站网站维护费用一般多少钱
  • 手机上可以做网站吗技能培训有哪些科目