Preguntas C++

¿Cómo puedo marcar un método de clase de C++ como obsoleto?

Diederik Tengo un método en una interfaz de C++ que quiero desaprobar, con código portátil. Cuando busqué esto en Google, todo lo que obtuve fue una solución específica de Microsoft; #pragma deprecated y __declspec(deprecated). Si no hay disponible una solución de obsolescencia general o totalmente portátil, aceptaré como “solución de segundo premio” una que se …

¿Cómo puedo marcar un método de clase de C++ como obsoleto? Leer más »

¿Por qué hay una pérdida de memoria en este programa y cómo puedo solucionarlo, dadas las restricciones (usando malloc y free para objetos que contienen std::string)? [duplicate]

Anurag Vohra Esta pregunta ya tiene respuestas aquí: ¿Cómo liberar correctamente la memoria asignada por colocación nueva? (4 respuestas) Cerrado Hace 9 días. Este es un ejemplo de trabajo mínimo para el problema al que me enfrento en mi código real. #include <iostream> namespace Test1 { static const std::string MSG1=”Something really big message”; } struct …

¿Por qué hay una pérdida de memoria en este programa y cómo puedo solucionarlo, dadas las restricciones (usando malloc y free para objetos que contienen std::string)? [duplicate] Leer más »

¿Las señales de Qt pueden ser públicas, protegidas o privadas?

antón ¿Las señales de Qt pueden ser públicas, protegidas o privadas? ¿Puedo crear señales internas, que solo se ven dentro de la clase? Actualizar: Tengo una clase con algunas señales internas. ¿Cómo puedo hacer que esas señales sean invisibles para otras clases (encapsulación y ocultación de información)? Use el patrón PIMPL en ese caso. – …

¿Las señales de Qt pueden ser públicas, protegidas o privadas? Leer más »

¿Puede un método estático acceder a un método privado de la misma clase?

Nube que fluye Tengo esta pregunta debido al constructor singleton/named. En ambos casos, los constructores reales son protegidos o privados, ninguno de los cuales es accesible desde el exterior. Por ejemplo, un constructor de nombre abreviado es este: class A { public: static A createA() { return A(0); } // named constructor private: A (int …

¿Puede un método estático acceder a un método privado de la misma clase? Leer más »

push_back o emplace_back con std::make_unique

NHDaly Según las respuestas a estas preguntas aquí, sé que ciertamente se prefiere usar c ++ 14 std::make_unique que a emplace_back(new X) directamente. Dicho esto, es preferible llamar my_vector.push_back(std::make_unique<Foo>(“constructor”, “args”)); o my_vector.emplace_back(std::make_unique<Foo>(“constructor”, “args”)); Es decir, ¿debería usar push_back o emplace_back al agregar un std::unique_ptr construido a partir de std::make_unique? ==== EDITAR ==== ¿y por qué? …

push_back o emplace_back con std::make_unique Leer más »