首页 > 代码库 > Delphi 函数的重载和作用域
Delphi 函数的重载和作用域
1.在delphi 中,我们可以使用相同的函数名来调用不同的函数,我们称这个函数为重载,函数的参数类型和参数的个数可以不同,用到的关键字overload;格式如下:
function addInt(x,y:integer):string;overload;
begin
result := intToStr(x + y);
end;
function addInt(x,y,z:integer):string;overload;
begin
result := intToStr(x + y + z);
end;
function addInt(x,y:integer;z:string):string;overload;
begin
result := intToStr(x + y + strToInt(z));
end;
begin
result := intToStr(x + y);
end;
function addInt(x,y,z:integer):string;overload;
begin
result := intToStr(x + y + z);
end;
function addInt(x,y:integer;z:string):string;overload;
begin
result := intToStr(x + y + strToInt(z));
end;
注意点:每个函数后面都需要加上:overload;
2.函数的作用域(局部和全局函数):
在单位文件下声明的函数只能应用于本单元,可以通过其他单元引用来使用函数;但是必须在被引用单位的接口部分声明函数,否则还是无法找到
如:
Unit1.pas文件
unit Unit1;
interface
uses
windows, Messages, SysUtils;
uses
unit2; //可以和上面的uses一起连写
implementation
procedure TForm1.Button1Click(Sender : TOBJect);
begin
showmessage(addint(1,2,3));
end;
end.
interface
uses
windows, Messages, SysUtils;
uses
unit2; //可以和上面的uses一起连写
implementation
procedure TForm1.Button1Click(Sender : TOBJect);
begin
showmessage(addint(1,2,3));
end;
end.
Unit2.pas文件:
unit Unit2;
interface
uses
windows, Messages, SysUtils;
function addint(x,y,z:Integer):string; //必须在这里声明函数,才能被其他单位去引用
implementation
function addInt(x,y,z : integer):string;
begin
Result := intToStr(x+y+z);
end;
end.
interface
uses
windows, Messages, SysUtils;
function addint(x,y,z:Integer):string; //必须在这里声明函数,才能被其他单位去引用
implementation
function addInt(x,y,z : integer):string;
begin
Result := intToStr(x+y+z);
end;
end.
Delphi 函数的重载和作用域
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。