¿Cuál es el equivalente C#
para MFC CString
?C++ CString equivalente en C#
Respuesta
Probablemente System.String
. Pero en un esfuerzo por proporcionar más información útil:
System.String
instancias son inmutables. Concatenation/substring/etc en realidad crean nuevos objetos de cadena, por lo que usar una instancia de cadena como un buffer para generar salida es una muy mala idea, en caso de que lo hicieras. Piense enSystem.String
comoconst CString
.System.Text.StringBuilder
se utiliza para generar y manipular el contenido de cadena. Tiene un método.ToString()
al que puede llamar para convertir su contenido en una cadena adecuada.- Puede usar
char[]
como una especie de alternativa al generador de cadenas, si sabe exactamente cuánto tiempo resultará una cadena generada, pero aun así puede usarnew StringBuilder(length)
para especificar una capacidad inicial predeterminada. A continuación, puede utilizar los métodos de adición relevantes sin tener que mantener una variable de índice. (StringBuilder
lo hace por usted.)
Como Billy menciona en la otra respuesta a esta pregunta, C# tiene una palabra clave string
que es esencialmente un acceso directo al tipo System.String
. Ambos son completamente equivalentes, aunque la mayoría de los codificadores te LART si usas la forma en mayúscula.
Puede intentar usar String, y ver si esto ayuda.
Tenga en cuenta que esto tiene soporte adicional en el lenguaje en forma de 'cadena' (minúscula). –
Ya sabes, CString
no es exactamente un brillante ejemplo de diseño de O hecho bien. MS siguió agregando funciones de miembro hasta que se parecía a una navaja suiza ... mientras todavía faltaba funciones impotentes.
Todo lo que puede hacer con un CString se puede hacer mejor con el 'Sistema.String' inmutable y varias clases de soporte.
- 1. C++ LibCurl - Convirtiendo CURLcode en una CString
- 2. UTF-8, CString y CFile? (C++, MFC)
- 3. DebugBreak() Equivalente en C#
- 4. iif equivalente en C#
- 5. SAXParser equivalente en C#
- 6. popen equivalente en C++
- 7. ¿Se recomienda usar cstdio, cstring, cmath, etc. en C++?
- 8. ¿Cómo convierto un CString a un doble en C++?
- 9. C equivalente de C++ STL
- 10. C/C++ 'continuar' Equivalente en VB6
- 11. ¿CreateObject equivalente en C/C++? (COM Interop)
- 12. Equivalente al comando C# 'as' en C++?
- 13. Objective-C equivalente a "anular" en C#
- 14. C++: Funciones de cadena sin <cstring>
- 15. equivalente de Jaxb en C#
- 16. equivalente de vbCrLf en C#
- 17. Java TreeMap equivalente en C#?
- 18. C# DateTime.Ticks equivalente en Java
- 19. Java Map equivalente en C#
- 20. F # List.map equivalente en C#?
- 21. Equivalente a Double.doubleToLongBits en C#?
- 22. equivalente de MyClass en C#
- 23. Java System.currentTimeMillis() equivalente en C#
- 24. C# String.Format() ¿Equivalente en PHP?
- 25. C++ equivalente a java.lang.Integer.MIN_VALUE
- 26. DoEvents equivalente para C++?
- 27. C# ULONG_PTR Equivalente
- 28. Anotación Java equivalente C#
- 29. C# String.IsNullOrEmpty JavaScript equivalente
- 30. C# equivalente a InStrRev
'CString' es una clase MFC que no forma parte de C++ estándar. He actualizado la pregunta en consecuencia. –