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

尉氏专业网站建设视频制作软件哪个最好用

尉氏专业网站建设,视频制作软件哪个最好用,酷站,seo企业网站模板试想你有一段代码,你可以用来做两个数的加法,但是现在需要求三个数的加法,你是否需要重新写一段和以前相似的代码呢。答案是不用的,因为你们要实现的功能是一样的,只是传入的参数不同而已,你完全可以复用同…

        试想你有一段代码,你可以用来做两个数的加法,但是现在需要求三个数的加法,你是否需要重新写一段和以前相似的代码呢。答案是不用的,因为你们要实现的功能是一样的,只是传入的参数不同而已,你完全可以复用同一段代码,只需要修改传入参数即可。所以有了今天的主角,函数的重载

​​​​​​//重载概念
//在同一语句块中(class或者struct)中
//函数(方法)名相同
//参数的数量不同
//或者
//参数的数量相同,但参数的类型或者顺序不同

//作用:
//1.命名一组功能相似的函数,减少函数名的数量,避免命名空间的污染
//2.提升程序可读性

//注意:
//1.重载和返回值类型无关,只和参数类型,个数,顺序有关
//2.调用时 程序会自己根据传入的参数类型判断使用哪一个重载

几个示例:

        示例1:参数数量不同

static int Add(int a, int b)
{return a + b;
}static int Add(int a, int b, int c)
{return a + b + c;
}

        使用:

Console.WriteLine(Add(2, 3));       // 输出 5
Console.WriteLine(Add(1, 2, 3));     // 输出 6

        说明:通过增加参数数量实现重载,编译器根据实参个数选择匹配的方法。

        示例2:参数类型不同

static int Add(int a, int b)
{return a + b;
}static float Add(float a, float b)
{return a + b;
}

        使用:

Console.WriteLine(Add(2, 3));        // 调用int版本,输出5
Console.WriteLine(Add(1.5f, 2.3f));  // 调用float版本,输出3.8

         说明:参数类型不同时,即使方法名相同,也会被视为不同重载。

        示例3:参数顺序不同

static string Combine(int id, string name)
{return $"ID:{id}, Name:{name}";
}static string Combine(string name, int id)
{return $"Name:{name}, ID:{id}";
}

        使用:

Console.WriteLine(Combine(101, "Alice"));  // 输出 "ID:101, Name:Alice"
Console.WriteLine(Combine("Bob", 102));   // 输出 "Name:Bob, ID:102"

说明:参数顺序不同是合法的重载方式,常用于不同语义的场景。

示例4:ref 和 out 关键字

static void Update(ref int x)
{x += 10;
}static void Update(out int x)
{x = 20;  // out必须在方法内赋值
}

        使用:

int num = 5;
Update(ref num);  // num变为15int newNum;
Update(out newNum); // newNum被赋值为20

        说明refout修饰的参数会被视为不同类型,因此可以重载。但仅通过refout无法单独构成重载(需参数类型不同)。

反例:返回值不同不构成重载

// 错误示例!编译报错
static int GetValue() { return 42; }
static string GetValue() { return "Hello"; }

        仅返回值不同不构成函数重载

总结:函数重载的优势

  1. 代码简洁:相同逻辑的方法共享一个名称(如Add),无需为不同类型单独命名(如AddIntAddFloat)。
  2. 可读性强:通过参数列表清晰表达方法的使用场景。
  3. 灵活扩展:后续新增参数类型或数量时,不影响已有代码。

注意事项:避免设计歧义性重载(如Add(int, float)Add(float, int)同时存在时,Add(5, 5)会因5可隐式转为float导致编译错误)。

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

相关文章:

  • 上海专业网站建设报网页版qq音乐在线登录
  • 东光网站建设建站的平台
  • 济南品牌网站建设低价合肥高新城创建设投资有限公司网站
  • 接任务做兼职的的网站哈尔滨建设工程
  • 网站建设员wordpress带用户
  • 网上服装商城网站代码网页介绍怎么写
  • 摄影网站怎么备案池州网站优化
  • 套模板网站版面设计素材网站
  • 平潭城乡住房建设厅网站dnf怎么做钓鱼网站
  • 房地产网站开发湖南网站开发 d岚鸿
  • 前端是做网站的吗企业网站建设图
  • 重新建设网站成都开发网站建设
  • 做公司+网站建设价格戴尔公司网站开发的经营目标
  • 江西城开建设集团有限公司网站法库综合网站建设方案
  • 借贷网站建设方案如何在人力资源网站做合同续签
  • 惠州建网站安陆 网站建设
  • 备案 网站名安卓app制作开发
  • 家装公司建设网站wordpress增加404
  • 北京网站开发团队淘宝刷网站建设
  • 网站内容建设ppt模板wordpress目录安装主题
  • 提供温州手机网站制作哪家好建站推广什么意思
  • 怎么把别人做的网站变成自己的广东建设监理协会网站个人账号
  • 有些网站为什么可以做资讯高端网站制作系统
  • 做网站框架需要什么软件长沙冠讯网络科技有限公司
  • 做网站投注代理犯罪吗网站推广的方法搜索引擎
  • 建瓯建设局网站建立网站批复
  • 国外免费注册域名的网站现在去成都需要隔离吗?
  • 单页的网站怎么做巴中网站建设开发公司
  • 登陆网站空间怎么开发微信公众号呢
  • .net网站模板html5网站上线模版