Tylko dla ciekawości,Jak zdefiniować Empty Char w Delphi
Dlaczego w Delphi, jeśli mamy zdefiniowane pusty char przez:
a:Char;
a:='';
otrzymujemy błąd: niezgodne typy: 'char' i 'string'
jednak jeśli złożyliśmy
a:='a';
będzie dobrze?
Czy konieczne jest zdefiniowanie pustego znaku przez: a:=#0
?
W świecie .net można mieć "pustą" szarżę, ponieważ mają typy zerowalne (za pośrednictwem systemu generycznego). W świecie baz danych, pola bazy danych mogą być zerowalne, ale wszystkie typy Delphi 'Ordinal', w tym' Integer', 'Char',' Byte', i reszta, podczas gdy mogą one mieć wartość wartownika (flagę) lub zero (# 0) dla Char, na przykład, nie może być "pusty" lub "pusty". Ponieważ łańcuchy i tablice nie są typami porządkowymi, reguły są różne. Ciąg jest jak "dynamiczna tablica znaków". –
Nie masz pewności co do '' '' stałej ekspresji. Jest typu 'string' i nie jest kompatybilny z typem' char'. Wręcz przeciwnie "a" jest zgodne. Więc ** masz ** na ** zdefiniowanie ** konwencji "pusty znak". – OnTheFly