dur*_*ara 4 delphi record finalize clear delphi-6
我可以将"任何"记录类型传递给我的程序吗?
我多次使用带有字符串的"记录".
type
TR = record
a: string;
b: string;
end;
Run Code Online (Sandbox Code Playgroud)
要清除它们,我需要写:
Finalize(R);
FillChar(R, SizeOf(R), #0);
Run Code Online (Sandbox Code Playgroud)
问题是如何通过任何类型的记录来清除它?
为此我得到了这个提示:"表达式不需要初始化/完成".
procedure ClearRecord(var R);
begin
Finalize(R);
FillChar(R, SizeOf(R), #0);
end;
Run Code Online (Sandbox Code Playgroud)
感谢您的每一个信息!
LU *_* RD 11
不要让它过于复杂.如果您不想写两行来清除记录,请考虑声明:
Const TR_Empty: TR = ();
Run Code Online (Sandbox Code Playgroud)
并使用它:
R := TR_Empty;
Run Code Online (Sandbox Code Playgroud)
并且正如其他人所评论的那样,执行此操作的通用程序并不值得付出努力.
如果您有Delphi-2009或更新版本,此代码对清除记录有效:
R := Default(TR);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
981 次 |
| 最近记录: |