文档章节

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

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 262
阅读 1
收藏 0
{
  下面的函数重名, 但参数不一样, 此类情况必须加 overload 指示字;
  调用时, 会根据参数的类型和个数来决定调用哪一个;
  这就是重载.
}

function MyFun(s: string): string; overload;
begin
  Result := '参数是一个字符串: ' + s;
end;

function MyFun(i: Integer): string; overload;
begin
  Result := '参数是一个整数: ' + IntToStr(i);
end;

function MyFun(x,y: Integer): string; overload;
begin
  Result := Format('参数是两个整数: %d 和 %d', [x,y]);
end;


{测试}
procedure TForm1.Button1Click(Sender: TObject);
var
  str: string;
begin
  str := 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; begin Result := IntToStr(x + y); end; function MyFun(x: Integer; y: Integer = 1): string; overload; begin Result := IntToStr(x + y); end; {因为当我们这样调用时: MyFun(a,b); 系统就不知道要调用哪个了!}

本文转载自:http://www.cnblogs.com/del/archive/2008/01/15/1039045.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
Delphi 使用 Duilib 库--Duilib for Delphi

导读 什么是Duilib for Delphi? Duilib for Delphi是一个基于C++Duilib的开源工程,主要致力于在Delphi中使用Duilib库构建漂亮的UI。 怎么学习?首先对Duilib有基本的了解,特别是XML构建的U...

不在乎y
2015/11/30
1K
0
Delphi 面向对象编程 第二章

类的声明是一种类型声明,在delphi中,类被当作一个类型来声明,语法为: type classname = class (baseclass) {field } {procedure and function } {property } end; 注意:1、类的声明可以...

CODER-SU
2011/12/20
0
1
最基础的数据结构-左轻侯

作者:左轻侯 创建时间:2007-03-04 22:29:06 最后修改时间:2008-01-18 22:07:52 本文发表于《程序员》2007年第3期      最基础的数据结构   左轻侯   2007.2.3      引言   ...

一配
2015/10/16
28
0
学Android开发,入门语言java知识点

Android是一种以Linux为基础的开源码操作系统,主要使用于便携设备,而linux是用c语言和少量汇编语言写成的,如果你想研究Android,就去学java语言吧。 Android开发入门教程 -Java语言,最差...

抉择很难
2015/12/11
130
0
深入理解多态(磨砺营马剑威java)

【威哥说】王健林一句话,刷爆了朋友圈。“先定一个能达到的小目标,比方说我先挣它一个亿”。好吧,也许我们没有那样的霸气,至少我们可以实现这样“先定一个能达到的小目标,比方说学会多态...

磨砺营
2016/08/30
5
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
34分钟前
1
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
46分钟前
0
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
0
0
LNMP架构(Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl)

Nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时...

蛋黄_Yolks
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部