为什么80%的码农都做不了架构师?>>>   

{下面的函数重名, 但参数不一样, 此类情况必须加 overload 指示字;调用时, 会根据参数的类型和个数来决定调用哪一个;这就是重载.
}function MyFun(s: string): string; overload;
beginResult := '参数是一个字符串: ' + s;
end;function MyFun(i: Integer): string; overload;
beginResult := '参数是一个整数: ' + IntToStr(i);
end;function MyFun(x,y: Integer): string; overload;
beginResult := Format('参数是两个整数: %d 和 %d', [x,y]);
end;{测试}
procedure TForm1.Button1Click(Sender: TObject);
varstr: string;
beginstr := MyFun('万一');ShowMessage(str);     {参数是一个字符串: 万一}str := MyFun(99);ShowMessage(str);     {参数是一个整数: 99}str := MyFun(6,8);ShowMessage(str);     {参数是两个整数: 6 和 8}
end;//另外还要注意关于重载和默认参数的问题, 譬如, 下面的重载是不可行的:
function MyFun(x,y: Integer): string; overload;
beginResult := IntToStr(x + y);
end;function MyFun(x: Integer; y: Integer = 1): string; overload;
beginResult := IntToStr(x + y);
end;{因为当我们这样调用时: MyFun(a,b); 系统就不知道要调用哪个了!}

转载于:https://my.oschina.net/hermer/blog/319870

理解 Delphi 的类(十) - 深入方法[23] - 重载相关推荐

  1. 理解 Delphi 的类(十) - 深入方法[17] - 提前声明

    为什么80%的码农都做不了架构师?>>>    //要点17: 如果前面的方法要调用后面的方法, 后面的方法需要提前声明 function MyFunB(x: Integer): I ...

  2. 理解 Delphi 的类(十) - 深入方法[27] - 递归函数: 简单示例

    为什么80%的码农都做不了架构师?>>>    //所谓递归函数, 就是自己调用自己的函数, 先来个简单的例子:{递归调用的简单示例} procedure alert(i: Inte ...

  3. 理解 Delphi 的类(十) - 深入方法[28] - 递归函数实例: 搜索当前目录下的所有嵌套目录...

    为什么80%的码农都做不了架构师?>>>    //上面一个例子不能说明递归函数的本质, 直接来个实用的函数吧, 刚好要用.unit Unit1;interfaceusesWindo ...

  4. 理解 Delphi 的类(十) - 深入方法[9] - 调用时的括号

    为什么80%的码农都做不了架构师?>>>    //要点9: 没有参数的过程或函数, 在调用时可以省略 (); 也可以带着 function MyFun: string; begin ...

  5. 理解 Delphi 的类(十) - 深入方法[4] - 共同类型的参数的简化写法

    //要点4: 多个相同类型的参数可以简化写法 function MyFun(str: string; x,y,z: Integer): string; beginResult := str + Int ...

  6. 理解 Delphi 的类(十) - 深入方法[13] - 在 interface 区声明的方法

    为什么80%的码农都做不了架构师?>>>    //要点13: 需要给其他单元调用, 必须在 interface 声明, 但必须在 uses 区后面 unit Unit1;inter ...

  7. 理解 Delphi 的类(十) - 深入方法[2] - 参数分割

    //要点2: 过程和函数都可以有一个或多个参数; 参数用 ; 号分割 procedure MyProc(i: Integer); beginShowMessage(IntToStr(i)); end; ...

  8. 理解 Delphi 的类(十) - 深入方法[15] - 调用其他单元的函数

    为什么80%的码农都做不了架构师?>>>    //要点15: 调用其他单元的函数 //包含函数的单元: unit Unit2;interfacefunction MyFun(x,y ...

  9. 理解 Delphi 的类(十一) - 深入类中的方法[8] - 抽象方法与抽象类

    //抽象方法类似与接口; 在没有接口的年代 Delphi 是用抽象方法来模拟接口的; 我想它最终会被接口替代.{下面就定义了两个抽象方法} TMyClass = class(TObject)proce ...

最新文章

  1. new一个新对象的时候,各属性方法的操行顺序
  2. c语言编程能控制热风炉,利用C语言设计热风炉悬链线拱顶研究.pdf
  3. OpenCV 特征点检测
  4. 语义分析的一些方法(中篇)
  5. vscode终端没显示_记一个VS Code终端显示问题的较完美解决
  6. 对malloc和free的思考
  7. 0 1背包问题 java_0-1背包问题,java的动态规划如题,代码如下public
  8. Windows中查找命令的路径 (类似Linux中的which命令)
  9. 我可以隐藏HTML5号码输入的旋转框吗?
  10. 这样的高颜值网易云音乐,是你想要的吗?
  11. myeclipse6.5安装jrable
  12. 新拓三维测量仪器助力土木工程与高端制造迈向数字化
  13. forum.anywlan.com.php,一句话让您理解WDS和WISP的区别/多数WISP路由器的简单有效的通用设置方法...
  14. 如何把PDF文件转换成其他格式或者转换成可编辑的PDF格式
  15. XPDL学习与分享 一
  16. 官宣!Apache Doris 从 Apache 孵化器毕业,正式成为 Apache 顶级项目!
  17. prefetch()
  18. Fiddler过滤器Filterset的使用
  19. 第四章 MPT 现代组合理论
  20. 关于eclipse SE版本不支持建立web工程的问题

热门文章

  1. 使用GIF(仅限Delphi2007)
  2. 配置springmvc在其他类中(spring容器外)获取注入bean
  3. Centos+PHP模块+exif扩展 (第三方模块)
  4. 泛前端知识图谱(Web/iOS/Android/RN)
  5. LINUNX下PHP下载中文文件名代码
  6. Android中怎么使图片显示
  7. linux系统下添加新硬盘的方法详解
  8. Myeclipse 8.0 +Flash builder 4 plugin 的实现
  9. Flex Air程序打包成独立的exe安装文件
  10. extjs4.0视频教程下载