Die Namensgebung ist jetzt vielleicht etwas ungewohnt, aber wenn man sich es genau überlegt macht es schon Sinn. Weil sonst müßte man alle
Ansi-Funktionen gegen Wide-Funktionen austauschen. Das würde gemeinsamen Quellcode mit älteren Delphiversionen und die Portierung nach
Unicode ziemlich aufwändig machen.
Viele Ansifunktionen haben übrigens auch in früheren Versionen schon intern mit
Unicode gearbeitet. Bisher hat z.B. AnsiUpperCase die Windows Funktion CharUpperBuffA aufgerufen. CharUpperBuffA hat dann den String erst mal nach
Unicode konvertiert, dann in Großbuchstaben umgewandelt, und dann zurück nach
Ansi konvertiert. Somit ist AnsiUpperCase in Delphi 2009 schneller geworden, und der Speicherverbrauch gesunken, da die Strings nicht mehr von
Ansi nach
Unicode konvertiert werden müssen. Anmerkung: Da
Win9x keine Unicodeunterstützung mitliefert, verhält sich CharUpperBuffA dort vermutlich anders.
Vielleicht hat ja jemand mal Lust genauer zu untersuchen, wie sich Verwendung von Windows
Ansi Funktionen auf die Fragmentierung des Heaps auswirkt.