C++——01.由C到C++.pptVIP

  • 6
  • 0
  • 约1.48万字
  • 约 39页
  • 2018-01-05 发布于河南
  • 举报
C——01.由C到C

虽然,对于通常的操作,重载函数能避免不必要的函数命名(和名字记忆),但很容易就会过分使用重载。 有些情况下,使用不同的函数名能提供较多的信息,使程序易于理解,不至于混淆。 考虑下面 Screen 类的一组用于移动屏幕光标的函数: void MoveHome(); void MovePos(int x, int y); 不要过度重载 乍看上去,似乎把这组函数重载为名为 Move 的函数更好一些 void Move (); void Move(int x, int y); 其实不然,重载后的函数失去了原来函数名所包含的信息,如此一来,程序变得晦涩难懂了。 // which is easier to understand? myScreen.MoveHome(); // we think this one! myScreen.Move(); 不要过度重载 对于函数:int func ( int) { } 它的函数名:func ; 它的函数签名(signature):func(int); 它的函数原型:int func(int); 函数重载要求几个函数同名,如何让一个名字能代表不同的代码段? Name-Mangling技术 只要将“按函数名识别”变为“按函数签名识别”即可。 Name_Mangline技术就是:编译器用“函数签名”替换了旧式编译器用“函数名”区分函数

文档评论(0)

1亿VIP精品文档

相关文档