Definitions of: AnsiString, WideString, String, ch

2019-06-06 04:25发布

问题:

This is a followup to this question

AnsiString is a class, too? And string? It is a class? And a char[]?

Can we say a WideString is a wrapper over double-byte characters, AnsiString is a wrapper over single-byte characters, and char[] is an array of single-byte characters? string not so sure what it is...

Not sure about the diferent kind of string types I have in Code Builder C++ 2007 available and its portability.

回答1:

  • AnsiString is a class provided C++ Builder,
  • std::string is class provided by the C++ standard library,
  • char [] creates an array of the type of character,
  • char * creates a pointer to the type character,
  • BSTR is a Windows COM specific string class.

AnsiString and BSTR are non portable, while std::string, char [] and char* are completely portable.