Preguntas etiquetadas con c++

57
¿Por qué no hay una construcción 'finalmente' en C ++?

El manejo de excepciones en C ++ se limita a try / throw / catch. A diferencia de Object Pascal, Java, C # y Python, incluso en C ++ 11, la finallyconstrucción no se ha implementado. He visto una gran cantidad de literatura de C ++ sobre "código seguro de excepción". Lippman escribe que el código...

56
¿Por qué hay tantas clases de cadenas frente a std :: string?

Me parece que muchas bibliotecas C ++ más grandes terminan creando su propio tipo de cadena. En el código de cliente que o bien tiene que usar el uno de la biblioteca ( QString, CString, fbstringetc., estoy seguro de que nadie puede nombrar algunos) o mantener la conversión entre el tipo estándar y...

55
¿Por qué tenemos un incremento de postfix?

Descargo de responsabilidad : conozco perfectamente la semántica del incremento de prefijo y postfijo. Así que por favor no me expliquen cómo funcionan. Al leer las preguntas sobre el desbordamiento de la pila, no puedo evitar notar que los programadores se confunden con el operador de incremento...

54
¿Por qué sería útil la palabra clave 'final'?

Parece que Java ha tenido el poder de declarar clases no derivables durante siglos, y ahora C ++ también lo tiene. Sin embargo, a la luz del principio de Abrir / Cerrar en SOLID, ¿por qué sería útil? Para mí, la finalpalabra clave suena igual friendque: es legal, pero si la está usando, lo más...

51
¿Qué le sucede a la basura en C ++?

Java tiene un GC automático que de vez en cuando detiene el mundo, pero se ocupa de la basura en un montón. Ahora las aplicaciones C / C ++ no tienen estos bloqueos STW, su uso de memoria tampoco crece infinitamente. ¿Cómo se logra este comportamiento? ¿Cómo se cuidan los objetos...

50
C ++ fuertemente tipeado typedef

He estado tratando de pensar en una forma de declarar typedefs fuertemente tipados, para detectar una cierta clase de errores en la etapa de compilación. A menudo es el caso que escribo def de int en varios tipos de identificadores, o un vector para posicionar o velocidad: typedef int...

48
¿Las bibliotecas de solo encabezado son más eficientes?

Supuestos Una de las ventajas de las bibliotecas de solo encabezado para C ++ es que no necesitan compilarse por separado. En C y C ++ inlinetiene sentido solo si la función se define en un archivo de encabezado *. Tradicionalmente, en C, se ha utilizado el diseño .c / .h, donde el encabezado...

48
¿Cuándo NO utilizar destructores virtuales?

Creí que busqué muchas veces sobre destructores virtuales, la mayoría menciona el propósito de los destructores virtuales y por qué necesita destructores virtuales. También creo que en la mayoría de los casos los destructores deben ser virtuales. Entonces la pregunta es: ¿por qué c ++ no establece...