c++-faq

¿Qué es un error de referencia/símbolo externo no definido y cómo lo soluciono?

¿Qué son los errores de referencia/símbolos externos no definidos? ¿Cuáles son las causas comunes y cómo solucionarlas/prevenirlas? Siéntase libre de editar / agregar el suyo propio.

Constructor predeterminado con corchetes vacíos

¿Hay alguna buena razón para que un conjunto vacío de corchetes redondos (paréntesis) no sea válido para llamar al construct ... ject(); // error Parece que escribo "()" automáticamente cada vez. ¿Hay una buena razón por la que esto no está permitido?

¿Qué es una expresión lambda en C++11?

¿Qué es una expresión lambda en C++11? ¿Cuándo usaría uno? ¿Qué clase de problema resuelven que no era posible antes de su introducción? Algunos ejemplos y casos de uso serían útiles.

¿Está obsoleto el lenguaje safe-bool en C++11?

Esta respuesta de @R. Martinho Fernandes muestra, que el lenguaje safe-bool está aparentemente obsoleto en C++11, ya que pued ... ec] p2) ¿Es correcta nuestra suposición en el título? Espero que no hayamos pasado por alto ningún inconveniente potencial.

Resolver errores de compilación debido a la dependencia circular entre clases

A menudo me encuentro en una situación en la que me enfrento a múltiples errores de compilación/enlace en un proyecto de C++ ... rgv[]) { A a(10); B b(3.14); a.Print(); a.SetB(&b); b.Print(); b.SetA(&a); return 0; }

¿Qué son copy elision y return value optimization?

¿Qué es copy elision? Qué es (named) return value optimization? ¿Qué implican? ¿En qué situaciones pueden ocurrir? ¿Qué so ... mente esté buscando la introducción. Para una descripción técnica, ver la referencia estándar. Véase casos comunes aquí .

¿Cuál es la estricta regla de aliasing?

Al preguntar sobre el comportamiento común indefinido en C, las almas más iluminadas de lo que me referí a la estricta regla de aliasing. ¿De qué están hablando?

¿Por qué se prefiere la clase enum sobre la enum simple?

Escuché a algunas personas recomendar el uso de clases enum en C++ debido a su seguridad de tipo . Pero, ¿qué significa eso realmente?

¿Qué es esta extraña sintaxis de miembro de dos puntos ( " :") en el constructor?

Recientemente he visto un ejemplo como el siguiente: #include <iostream> class Foo { public: int bar; Foo(int nu ... . Y, por cierto, ¿hay otras características del lenguaje esotérico como esta, que nunca encontrarás en un libro de C++ común?

¿Los paréntesis después del nombre del tipo marcan la diferencia con nuevo?

Si 'Test' es una clase ordinaria, ¿hay alguna diferencia entre: Test* test = new Test; Y Test* test = new Test();

¿Cómo uso arrays en C++?

C++ heredó matrices de C donde se usan prácticamente en todas partes. C++ proporciona abstracciones que son más fáciles de us ... omenzó en primer lugar, por lo que es muy probable que su respuesta sea leída por aquellos a quienes se le ocurrió la idea.)

¿Cómo es que una referencia no constante no puede vincularse a un objeto temporal?

¿Por qué no se permite obtener una referencia no constante a un objeto temporal?, ¿qué función getx() devuelve? Claramente, ... Mi pregunta adicional. ¿La siguiente asignación extiende la vida útil del objeto temporal? X& x = getx().ref(); // OK

¿Dónde puedo encontrar los documentos estándar actuales de C o C++?

Para muchas preguntas la respuesta parece encontrarse en "el estándar". Sin embargo, ¿dónde encontramos eso? Preferiblemente ... os que estoy buscando en este momento, ¿dónde hay buenos recursos en línea por: C89 C99 C11 C++98 C++03 C++11 C++14

¿Dónde y por qué tengo que poner las palabras clave" template "y" typename"?

En las plantillas, ¿dónde y por qué tengo que poner typename y template en nombres dependientes? ¿Qué son exactamente los nom ... te? Y debe entonces asumir que inUnion es una plantilla de clase, es decir, inUnion<U> nombra un tipo y no una función?

Cómo pasar objetos a funciones en C++?

Soy nuevo en la programación en C++, pero tengo experiencia en Java. Necesito orientación sobre cómo pasar objetos a funcione ... riable que contiene referencia a los objetos. Sería genial si también pudiera explicar dónde usar cada una de esas opciones.

Inicialización del constructor-orden de evaluación de la lista

Tengo un constructor que toma algunos argumentos. Yo había asumido que fueron construidos en el orden indicado, pero en un c ... { public: A(OtherClass o, string x, int y) : a_(o), b_(a_, x, y) { } OtherClass a_; AnotherClass b_; };

¿Cuándo puedo usar una declaración de reenvío?

Estoy buscando la definición de cuándo se me permite hacer una declaración de reenvío de una clase en el archivo de encabezad ... para una clase base, para una clase mantenida como miembro, para una clase pasada a la función miembro por referencia, etc. ?

¿Cómo evitar que la aplicación de consola de C++ salga inmediatamente?

Últimamente, he estado tratando de aprender C++ de este sitio web. Desafortunadamente cada vez que intento ejecutar uno de lo ... inmediatamente. ¿Hay alguna manera de detener el cierre inmediato del programa para que pueda ver los frutos de mi esfuerzo?