Поскольку string
является псевдонимом для AnsiString
, что касается D2007, функциональных отличий нет, и среда IDE может заменить более часто используемый string
вместо фактического используемого типа. Это можно рассматривать как краткий обзор, но эксперимент, который вы проводите, убедителен относительно того, можно ли принудительно ввести тип AnsiString
, речь идет не о вашем коде, а о IDE.
Ничего не нужно делать, если толькопакет будет перенесен. Поскольку при компиляции в XE7 среда IDE не может заменить string
на AnsiString
, поскольку первая является псевдонимом для UnicodeString
начиная с D2009.
Однако, если необходимо также перенести потребителей пакета, необходимоиспользовать отдельный тип. Как
type
MyAnsiString = type AnsiString;
Обратите внимание, что вы не сможете передать один из типов в качестве параметра var для другого ( link ), но это, вероятно, не будет иметь никакого значения при использованиив качестве параметра для обработчика событий.