gpt4 book ai didi

delphi - 元类默认参数值 (Delphi 2009)

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

我想在元类参数中给出默认值:

type
TMyClass = class
end;

type
TMyClassMetaClass = class of TMyClass;

procedure MyProcedure(const AMetaClass: TMyClassMetaClass = TMyClass);

有可能吗?在 Delphi2009 中,它给了我错误:E2026需要常量表达式

最佳答案

根据语言规则,元类不是常量表达式。因此,最好的选择是使用重载:

procedure MyProcedure(const AMetaClass: TMyClassMetaClass); overload;
procedure MyProcedure; overload;

在实现中:

procedure MyProcedure(const AMetaClass: TMyClassMetaClass);
begin
....
end;

procedure MyProcedure;
begin
MyProcedure(TMyClass);
end;

关于delphi - 元类默认参数值 (Delphi 2009),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31080978/

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