调用函数问题

西湖十月夜 2021-3-24 272

function Double (Value:integer):integer;
begin
  Result:=Value*2;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a1:array of integer;
begin
  setlength(a1,1000);
  a1[99]:=100;
  Double(a1[99]);
  showmessage(inttostr(a1[99]))
end;
这样调用了   a1[99]   还是100  一定要 a1[99]:= Double(a1[99]);搜了一下说  前面那个也可以的呀 为什么我这边不行


DelphiTop论坛申明 1、本网站名称:DelphiTop论坛  网址:www.DelphiTop.com
2、专注于互联网分享精神,专注收藏与分享。你薅网友,我就薅你。
3、本站资源,如发现链接失效,可联系QQ 16643506进行反馈,我们会第一时间更新。
最新回复 (5)
  • 莫名 2021-3-25 0
    2
    参数传递问题  你这是传值调用 传址需要加var
    function Double (var Value:integer):integer
    这样就可以了
  • 西湖十月夜 2021-3-26 0
    3
    试了下  还是100呀 
  • 西湖十月夜 2021-3-26 0
    4
    莫名 参数传递问题 你这是传值调用 传址需要加var function Double (var Value:integer):integer 这样就可以了
    试了下  还是100呀 
  • smkf225 2021-3-27 0
    5

    如果想a1[99]=200 可以这样操作


      function Double(var Value: integer): integer;
      begin
        Value := Value * 2;
      end;


  • 西湖十月夜 2021-3-29 0
    6
    smkf225 如果想a1[99]=200 可以这样操作   function Double(var Value: integer): integer;  beg ...
    谢谢 这样就可以了 
返回