zoukankan      html  css  js  c++  java
  • delphi数组作为参数传值

    在函数中如果数组的个数不定,可以使用开放数组参数

    实参可以接受静态数组和动态数组

    procedure p1(a:array of Byte);

    begin

    ShowMessage( IntToHex( Integer(@a),2));

    ShowMessage(IntToStr(a[0]));

    end;

    procedure TForm1.btn1Click(Sender: TObject);

    var

    a:array[0..5] of Byte;

    begin

    ShowMessage(IntToHex( Integer(@a),2));

    p1(a);

    end;

    function Find(A: array of Char): Integer;

    以上函数使用字符数组作为参数传值,其中A:array of Char虽然有着与动态数组
    dynamic array相近的形式,但是在这里它并不代表着动态数组。这里A:array of Char
    可以使用任意静态或动态数组。
    另外,如果一定使A:array of Char为动态数组,则须使用以下形式:
    type TDynamicCharArray = array of Char;
    function Find(A: TDynamicCharArray): Integer;
    ======================
    例子(e.g.)
    function Find(A: array of Char): Integer;
    begin
    setlength(A,100);//出错,应为setlength只能用于动态数组。
    end;

    function Find(A: TDynamicCharArray): Integer;
    begin
    setlength(A, 100);//正确。
    end;

  • 相关阅读:
    服务器响应状态码
    30
    29
    Java中参数始终是按值传递
    浅析 Java 中的继承和重写
    25
    super 关键字
    24
    Overriding
    23
  • 原文地址:https://www.cnblogs.com/bayzhang/p/6098468.html
Copyright © 2011-2022 走看看