Wiz*_*ard 2 delphi object pass-by-reference
我有一个很大的应用程序,目前正在设置.为了节省我更改IDE/Object Inspector中的所有按钮,我计划为主要对象执行一些功能,例如
procedure StyleButton(AButton : TButton)
begin
AButton.Color := clGreen;
AButton.Font.Style = [fsBold];
end;
Run Code Online (Sandbox Code Playgroud)
等等,然后根据需要将其添加到表单onCreates
StyleButton(Button1); whatever etc
Run Code Online (Sandbox Code Playgroud)
在这样的参数中传递对象没有问题.它只是引用第一个对象吗?
它工作正常,我想不出任何问题,但因为这是一个大型的应用程序,成千上万的用户,我只是想确保没有问题/内存泄漏/资源消耗问题.
也将使用TAdvStringGrid和TEdit/TMemo组件做类似的事情.
然后只允许一个地方更改这些设置.
或者有人有更好的主意?
这是一个很好的主意.该函数将修改传递给它的任何对象.
你没有通过参考传递.你正在经历价值.您传递的值是参考."通过引用传递"意味着您将使用在这种情况下不适合的var
或out
关键字.