| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 679 人关注过本帖
标题:关于过程中引用参数的问题
只看楼主 加入收藏
xu2000
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:51
帖 子:3890
专家分:56
注 册:2006-4-8
结帖率:100%
收藏
 问题点数:0 回复次数:4 
关于过程中引用参数的问题

假设有如下代码
procedure TForm1.FormCreate(Sender: TObject);
begin
a(edit1.text);
end;
procedure a(var s:string);
begin
s:='ll';
end;
运行时编译出错。
有人能告诉我这是为什么吗?应该怎么解决?

搜索更多相关主题的帖子: 参数 
2006-04-14 18:47
ensr2006
Rank: 2
等 级:新手上路
威 望:3
帖 子:97
专家分:0
注 册:2006-3-28
收藏
得分:0 
能再多粘贴一点代码吗??

学海无涯!~ensr2006永远支持大家!~
2006-04-16 16:44
ysp_1984
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:371
专家分:0
注 册:2006-1-5
收藏
得分:0 
一看就不对.
var去了.a前加Tform1.如:
procedure Tform1.a(s:string);
begin
s:='ll' 这一句不知你干什么.;
end;
edit1.text是你的过程的实参.s就和edit1.text的值是一样的.
不知你又给s赋值为'11'干么?

[此贴子已经被作者于2006-4-16 17:52:00编辑过]


心中的那片蓝天,永远为你而存在... ...
2006-04-16 17:50
xu2000
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:51
帖 子:3890
专家分:56
注 册:2006-4-8
收藏
得分:0 
看来大家是没明白我的问题,我是说假如我做了一个函数
function xx(s:string; var s1:string):string;
....
然后我向这个函数传递参数,
xx(stringgrid1.cells[1,1],stringgrid1.cells[1,1]);
为什么第一个参数可以传递,而第二个不可以?

我会拿出我全部的钱财,以保你衣食无忧。我会献出我所有的智慧,以助你一帆风顺。我会想到所有的笑语,以令你展眉开颜。我会挤出最长的时间,以使你终生幸福。        [本人原创的结婚宣言]
2006-04-17 15:51
ysp_1984
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:371
专家分:0
注 册:2006-1-5
收藏
得分:0 
第二个参数是变量参数.你去看看变量参数的用法就知道了.

心中的那片蓝天,永远为你而存在... ...
2006-04-17 16:35
快速回复:关于过程中引用参数的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028888 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved