值參數,引用參數,常量參數有何區別,什麼情況下使用某种參數....
請用通俗語言解釋一下,多謝啦!!!

解决方案 »

  1.   

    值参数传递时会新建一个局部变量,修改这个值时不会影响到原来的参数值;
    引用参数是传递的参数地址,所以修改这个值会直接改变原来的参数值;
    常量参数也是传递的参数地址,但它不允许修改原来的参数值。如: 
    procedure test;
      procedure pro1(AValue: integer;)  //值参数
      begin
        inc(AVaule);
        ShowMessage(IntToStr(AVaule));
      end;  procedure pro2(var AValue: integer;)  //引用参数
      begin
        inc(AVaule);
        ShowMessage(IntToStr(AVaule));
      end;  procedure pro3(const AValue: integer;)  //常量参数
      begin
        //inc(AVaule); //编译不过
        ShowMessage(IntToStr(AVaule));
      end;
    var
      i: integer;
    begin
      i:=1;
      proc1(i);
      ShowMessage(IntToStr(AVaule));
      proc2(i);
      ShowMessage(IntToStr(AVaule));
      proc3(i);
      ShowMessage(IntToStr(AVaule));
    end;