全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:971
推到 Plurk!
推到 Facebook!

自定义函数的使用问题???

答題得分者是:william
ljq_2002
一般會員


發表:27
回覆:12
積分:7
註冊:2003-01-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-22 15:06:55 IP:61.138.xxx.xxx 未訂閱
有一个pas的函数文件,如: unit ymb_units; interface uses Windows, Messages, SysUtils, Variants, Classes,Forms; function Ljust(var stra:string;var strb:string;var k:integer):string; implementation {$R *.dfm} function Ljust(var stra:string;var strb:string;var k:integer):string; var i:integer; j:integer; ss: string; begin Result:=''; if length(stra)=k then begin Result:=stra; end else begin i:=k-length(stra); ss:=''; for j:=1 to i do ss:=ss strb; result:=ss strb; end; end; 然后在一个程序中调用ljust,如: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls,ymb_units; type TForm1 = class(TForm) edt1: TEdit; btn1: TButton; procedure btn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.btn1Click(Sender: TObject); begin edt1.Text:=ljust('4','0',5); end; end. 编译时出现如下错误!!! types of actual and formal var paramters must be identical!
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-22 15:11:27 IP:147.8.xxx.xxx 未訂閱
You declare the parameters as var, you MUST pass in variables, not constants, or modify your function as: function Ljust(const stra,strb:string; k:integer):string;
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-22 15:14:58 IP:61.155.xxx.xxx 未訂閱
方法一 ... function Ljust(stra:string;strb:string;k:integer):string; ... function Ljust(stra:string;strb:string; k:integer):string; var i:integer; j:integer; ss: string; begin Result:=''; if length(stra)=k then begin Result:=stra; end else begin i:=k-length(stra); ss:=''; for j:=1 to i do ss:=ss strb; result:=ss strb; end; end; 这样定义去掉var 方法二: 或者这样调用 var a,b:string; c:integer; begin a:='4'; b:='0'; c:=5; edit1.Text:=ljust(a,b,c); end; 發表人 - sos_admin 於 2003/08/22 15:18:01
系統時間:2024-05-18 18:29:13
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!