c++:c++:¿Cuál es la diferencia entre Cstring y tipos de cadena?
String es una implementación en la biblioteca estándar de C++.
String y CString son clases de plantilla de cadena. String es una clase de cadena definida por la clase de plantilla estándar (STL) y se ha incluido en el estándar C++.
c string (typedef c string<TCHAR, StrTraitMFC<TCHAR>>CString) es la clase de cadena más utilizada en Visual C++, heredada de la clase CSimpleStringT y se utiliza principalmente para el medio de programación MFC y ATL. Los principales tipos de datos son char (aplicado a ANSI), wchar_t (unicode) y Tchar (ANSI y unicode).
Char* es el puntero de cadena más comúnmente utilizado en la programación C, y generalmente termina en '\0';
Cuando use cadenas en MFC y ATL, use Cstring tanto como sea posible. Después de todo, todos son hijos de Microsoft y son mejores que otros en todos los aspectos. Sin embargo, se recomienda utilizar String en plataformas que no sean de Microsoft o donde se requiera una alta portabilidad. La biblioteca de plantillas estándar proporciona un algoritmo general tan poderoso que no es necesario reinventar la rueda usted mismo.