C为什么没有重载?

发布于 2022-10-15 08:40:34 字数 19 浏览 27 评论 0

rt

请教~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

梦里°也失望 2022-10-22 08:40:34

语言当初设计的原因,C语言考虑比较底层,不来那么多虚的,它认为一个全局的名字应该对应唯一的地址
不要用C++那套去思考C

赢得她心 2022-10-22 08:40:34

C为什么要有重载呢?

情痴 2022-10-22 08:40:34

C有重载呀,OIOIC已经早就实现了

夜吻♂芭芘 2022-10-22 08:40:34

重載有什麽額外的好處麽?你自己換個名字寫不更清晰麽?不過你要是不想寫那麽多的名字,可以參考如下寫法。

  1. foo(int t, void* v)
  2. {
  3.   switch (t) {
  4.   case eInt: xxxx(int*)v; break;
  5.   case eChar: xxxx(char*)v; break;
  6.   }
  7. }

复制代码

末骤雨初歇 2022-10-22 08:40:34

重载有个好处就是当你想修改原有函数的参数时,不需要对所有调用到该函数的地方进行修改。

七月上 2022-10-22 08:40:34

重载没啥好处,纯粹是带来混乱!

葵雨 2022-10-22 08:40:34

重载有个好处就是当你想修改原有函数的参数时,不需要对所有调用到该函数的地方进行修改。
gz80 发表于 2011-04-25 15:10

在一个负责的重载代码负责人那里,这是个好处,因为他会考虑到使用到重载的所有的类对象,派生类对象,是否会因为自己的修改而出现错误。
在一个糟糕的重载代码负责人那里,对类使用者来说,这是个灾难。因为使用者无法显式得得知自己的Bug居然出现在一个加号或者减号里。
而这个Bug在他们今天早晨CheckOut底层代码前还不存在。

我不否认面向对象的这类机能带给人们便利,但是便利的背后往往隐藏着不可控。

兰花执着 2022-10-22 08:40:34

这个让我想起那个蔬菜的笑话{:3_189:}

葬心 2022-10-22 08:40:34

rt

请教~
zhanglistar 发表于 2011-04-25 09:03

    函数可以重载,运算符不可以。

某库中有一个函数,平时就使用这个。你想改变一下,就可以重新写一个。连接这个.o,
.o优先。连接顺序,左边的优先。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文