gpt4 book ai didi

delphi - 如何为所有私有(private)/ protected 方法生成 Rtti 信息?

转载 作者:行者123 更新时间:2023-12-03 19:07:25 25 4
gpt4 key购买 nike

已经为这个问题苦苦挣扎了一段时间,似乎无法找到解决方法。我正在使用德尔福 XE-2。

我需要为给定包中的所有类的私有(private)/ protected 方法生成 Rtti 信息。

默认情况下,Delphi 似乎只为公共(public)和发布的方法生成 Rtti。

如果我将以下指令添加到包含类的单元中,那么 Rtti 是
为私有(private)和 protected 字段生成,但仅针对该类。

{$RTTI METHODS([vcPublic, vcProtected, vcPrivate])}

我不想将此指令添加到每个单元。

我将该指令添加到 Packages .dpk 文件中,但没有任何效果。

谢谢!

最佳答案

除了指定每个单位之外,别无他法。如您所见in the documentation $RTTI 的范围是本地的。

a bug在高达 XE5 中,这使得该指令在多个单元中有效,但它似乎在包中没有“工作”。

我对最佳实践的建议是使用一个 inc 文件,您只需将其包含在您编写的每个单元中。如果您已经有大量单位要添加它,那么只需使用一些搜索和替换来执行此操作。

关于delphi - 如何为所有私有(private)/ protected 方法生成 Rtti 信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31142685/

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