delphi - validar - saber si un campo es null php
¿La mejor manera de comprobar si una variable es nula? (2)
Una condición común que todos los programas deben hacer es verificar si las variables están asignadas o no.
Tome las siguientes declaraciones:
(1)
if Assigned(Ptr) then
begin
// do something
end;
(2)
if Ptr <> nil then
begin
// do something
end;
¿Cuál es la diferencia entre Assigned(Ptr)
y Ptr <> nil
?
En cuanto al rendimiento, no hay diferencia. Personalmente prefiero la segunda forma ya que encuentro que los humanos pueden analizar el significado más rápido.
Por lo general, es lo mismo ... excepto cuando se comprueba una función ...
function mfi: TObject;
begin
Result := nil;
end;
procedure TForm1.btn1Click(Sender: TObject);
type
TMyFunction = function: TObject of object;
var
f: TMyFunction;
begin
f := mfi;
if Assigned(f) then
begin
ShowMessage(''yes''); // TRUE
end
else
begin
ShowMessage(''no'');
end;
if f <> nil then
begin
ShowMessage(''yes'');
end
else
begin
ShowMessage(''no''); // FALSE
end;
end;
Con la segunda sintaxis, verificará el resultado de la función, no la función en sí ...