GO 语言如何用好变长参数?

阿兵云原生 2023-10-20 23:27:12

 

 

函数重载

对于函数重载相信编码过的 xdm 肯定不会陌生,函数重载就是在同一个作用域内定义多个具有相同名称但参数列表不同的函数

此处的参数列表不同,可以是参数的类型不同,参数的个数不同

那么我们一起分别来看看 C 语言,C++ 语言,GO 语言 如何去模拟和使用重载,体会一下

C语言模拟重载

那么我们以前学过的 C 语言,是不支持重载的,是不会自动根据参数类型来进行匹配的,但是我们可以通过一些技巧来模拟函数重载,例如我们可以定义一类名字相似的函数,参数列表来模拟重载的效果

例如:

  1. 定义函数 sum_int ,参数为 2 个 int 类型的变量
  2. 定义函数 sum_double ,参数为 2 个 double 类型的变量
  3. 定义函数 sum_float ,参数为 2 个 float 类型的变量
int sum_int(int x, int y) {
    return x + y;
}

double sum_int(double x, double y) {
    return x + y;
}

float sum_int(float x, float y) {
    return x + y;
}

那么在调用的时候,我们就会根据不同的入参类型来调用对应的函数

C++ 重载

 

点击查看原文

可以进入地址进行体验和学习:https://xxetb.xet.tech/s/3lucCI

...全文
146 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tang_Zone 2023-10-21
  • 打赏
  • 举报
回复

学习

537

社区成员

发帖
与我相关
我的任务
社区描述
零声学院,目前拥有上千名C/C++开发者,我们致力将我们的学员组织起来,打造一个开发者学习交流技术的社区圈子。
nginx中间件后端 企业社区
社区管理员
  • Linux技术狂
  • Yttsam
  • 零声教育-晚晚
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

请新加入的VIP学员,先将自己参加活动的【所有文章】,同步至社区:

【内容管理】-【同步至社区-【零声开发者社区】

试试用AI创作助手写篇文章吧