所有程序应该做的一个常见条件是检查是否分配了变量.
采取以下声明:
(1)
if Assigned(Ptr) then
begin
// do something
end;
Run Code Online (Sandbox Code Playgroud)
(2)
if Ptr <> nil then
begin
// do something
end;
Run Code Online (Sandbox Code Playgroud)
Assigned(Ptr)和之间有什么区别Ptr <> nil?
当我看到在原来的Delphi源代码(大多在firemonkey)所作的修改,我看到Embarcadero公司的某个时候取代if assigned(MyObj) then的if (MyObj <> nil) then.他们有任何真正的理由这样做,还是仅仅是纯粹的化妆品?