procedure single_tariff(v_called:string;out m:integer);其中out是什么意思?和VAR有什么区别?
如题 问题点数:5、回复次数:4Top
1 楼chechy(www.qdocuments.net)回复于 2002-05-22 20:48:22 得分 1
out不在乎m的输入值,它需要给m输出一个内容。
除了不在乎输入值外,out和var没有区别。Top
2 楼Kingron(单身走我路……)回复于 2002-05-22 20:51:21 得分 1
Good,Chechy。
out仅仅接受返回的值,对out的任何输入都会被忽略......其它的类似varTop
3 楼hada(哈达)回复于 2002-05-22 20:51:21 得分 0
Out 标志参数m是输出类型的参数,也就是说,调用函数时,函数内部可以对传入的m进行赋值。Top
4 楼westfly(左眼)回复于 2002-05-22 21:33:48 得分 3
看一下这一小段程序便可明白了:
procedure Hello(out S: String);
begin
S := 'Hello, ' + S;
end;
procedure TestOut;
var S: String;
begin
S := 'World';
Hello(S);
// 此时S的值是'Hello, '而非'Hello, World'!, 在过程Hello中S的原始值被丢弃了!
ShowMessage(S);
end;Top




