Widestrings (used to represent unicode character strings in COM applications) are implemented in much the same way as unicodestrings. Unlike the latter, they are not reference counted, and on Windows, they are allocated with a special windows function which allows them to be used for OLE automation. This means they are implemented as null-terminated arrays of WideChars instead of regular Chars. A WideChar is a two-byte character (an element of a DBCS: Double Byte Character Set). Mostly the same rules apply for WideStrings as for AnsiStrings. Similar to unicodestrings, the compiler transparantly converts WideStrings to AnsiStrings and vice versa.
For typecasting and conversion, the same rules apply as for the unicodestring type.