Delphi 中的 .Create 和 .Create() 有什么区别?
What is the difference between .Create and .Create() in Delphi?
我正在阅读 Pawel Glowacki 的专家 Delphi 一书。在第 98 页上,他有以下 onClick 事件处理程序:
procedure TFormFavJSON.btnReadDOMClick(Sender: TObject);
var
favs: TFavorites; valRoot: TJSONValue; objRoot: TJSONObject;
valFavs: TJSONValue; arrFavs: TJSONArray;
begin
favs := TFavorites.Create;
//
// Several lines of code omitted
//
favs.Free;
end;
然而,当我键入 .Cre 并使用代码完成 Ctrl + Space 时,IDE 完成带有一组空括号的代码。
favs := TFavorites.Create();
那么下面哪一个是最正确的?
favs := TFavorites.Create;
favs := TFavorites.Create();
没有区别。 Pascal 允许任何一种语法。不需要的时候我更喜欢不带括号
他们都同样正确。 Object Pascal 允许您在过程或方法不需要参数时省略括号,但也允许您包含它们。看你喜欢哪个。
它们是一样的,而且都是正确的。但是如果你使用带有参数的构造函数,括号会更有帮助。
我正在阅读 Pawel Glowacki 的专家 Delphi 一书。在第 98 页上,他有以下 onClick 事件处理程序:
procedure TFormFavJSON.btnReadDOMClick(Sender: TObject);
var
favs: TFavorites; valRoot: TJSONValue; objRoot: TJSONObject;
valFavs: TJSONValue; arrFavs: TJSONArray;
begin
favs := TFavorites.Create;
//
// Several lines of code omitted
//
favs.Free;
end;
然而,当我键入 .Cre 并使用代码完成 Ctrl + Space 时,IDE 完成带有一组空括号的代码。
favs := TFavorites.Create();
那么下面哪一个是最正确的?
favs := TFavorites.Create;
favs := TFavorites.Create();
没有区别。 Pascal 允许任何一种语法。不需要的时候我更喜欢不带括号
他们都同样正确。 Object Pascal 允许您在过程或方法不需要参数时省略括号,但也允许您包含它们。看你喜欢哪个。
它们是一样的,而且都是正确的。但是如果你使用带有参数的构造函数,括号会更有帮助。