Sólo por curiosidad,¿Cómo definir vacío Char en Delphi
¿Por qué en Delphi, si definimos un carbón vacía por:
a:Char;
a:='';
obtenemos un error: tipos incompatibles: 'Char' y 'cadena'
Sin embargo, si colocamos
a:='a';
¿estará bien?
¿Es necesario definir un carácter vacío por: a:=#0
?
En el mundo .net, podría tener un Char "vacío" porque tienen tipos Nullable (a través de su sistema de genéricos). Y en el mundo de la base de datos, los campos de base de datos pueden ser Nullable, pero todos los tipos 'Ordinales' Delphi, incluyendo' Entero', 'Char',' Byte', y el resto, mientras que pueden tener algún centinela (bandera) o valores cero (# 0) para Char, por ejemplo, no puede ser "vacío" o "nulo". Como las cadenas y matrices no son tipos ordinales, las reglas son diferentes. Una cadena es como una "matriz dinámica de caracteres". –
Está confundido acerca de la expresión constante ''''. Es del tipo 'string' y no es compatible con el tipo' char'. En sentido contrario, "a" es compatible. Entonces, ** tienes ** para ** definir ** convención de "char vacío". – OnTheFly