gpt4 book ai didi

delphi - 有没有一种方法可以有效地访问记录的私有(private)过程/函数?

转载 作者:行者123 更新时间:2023-12-02 20:20:58 26 4
gpt4 key购买 nike

在德尔福(东京),我们有:

  THashSHA2 = record
private
...
function GetDigest: TBytes;
procedure Update(const AData: PByte; ALength: Cardinal); overload;
public
...
end;

有没有办法访问函数 GetDigest/Update ?不通过 RTTI,因为这会太慢。我需要一些快速的东西,比如程序是否公开。

最佳答案

您实际上在这里提出了两个不同的问题:

  1. 有没有办法有效地访问记录的私有(private)过程/函数?

没有。没有通用且有效的方法来访问(任何)私有(private) proc/func。

  • 有没有办法访问 GetDigest/Update 函数?
  • 是的。可以/应该使用公共(public)函数 HashAsBytes 代替 GetDigest。

    function HashAsBytes: TBytes; inline;

    可以/应该使用公共(public)程序更新而不是私有(private)程序。

    procedure Update(const AData; ALength: Cardinal); overload;

    procedure Update(const AData: TBytes; ALength: Cardinal = 0); overload; inline;

    procedure Update(const Input: string); overload; inline;

    关于delphi - 有没有一种方法可以有效地访问记录的私有(private)过程/函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48370502/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com