gpt4 book ai didi

delphi - 我需要将 "inherited"行添加到记录构造函数中吗?

转载 作者:行者123 更新时间:2023-12-03 14:41:54 24 4
gpt4 key购买 nike

现代 Delphi 允许记录构造函数。我有以下代码:

{ TKMRect }
constructor TKMRect.Create(aPoint: TKMPoint);
begin
inherited; // <<- Do I need to add this line ?

Left := aPoint.X;
Top := aPoint.Y;
Right := aPoint.X;
Bottom := aPoint.Y;
end;

我的问题是 - 我是否需要在记录构造函数中添加 inherited 行?为什么?

最佳答案

不,您不需要执行此操作,因为记录不支持继承,因此 inherited 在此上下文中是无操作。

FWIW 我将记录构造函数视为一种反模式。这使得调用站点的读者很难区分值类型和引用类型。我个人使用名为 New 的静态类函数来返回一个新值来实现此目的。您可以争论不同的名称是否更好,但只要不是 Create 就没关系。

关于delphi - 我需要将 "inherited"行添加到记录构造函数中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29627530/

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