Resultados de la búsqueda a petición "destructor"

5 la respuesta

¿Por qué se ha llamado al destructor solo una vez?

#include <iostream> using namespace std; class Test { public: Test() { printf("construct ..\n"); } ~Test() { printf("destruct...\n"); } }; Test Get() { Test t = Test(); return t; } int main(int argc, char *argv[]) { Test t = Get(); return 0; }la ...

2 la respuesta

GNU GCC (g ++): ¿Por qué genera múltiples dtors?

Entorno de desarrollo: GNU GCC (g ++) 4.1.2 Mientras trato de investigar cómo aumentar la 'cobertura del código, particularmente la cobertura de la función' en las pruebas unitarias, descubrí que parte de la clase dtor parece generarse varias ...

3 la respuesta

PHP creación / escritura de archivos dentro del destructor

Cuando llame afile_put_contents() dentro de un destructor, hace que los archivos se escriban enSERVER_ROOT ... (¡Ay!) Soluciones? tldr: Quiero almacenar en caché una matriz, que probablemente contenga instancias de clase serializadas. Pensé, ...

4 la respuesta

¿Cómo eliminar un objeto construido a través de un nuevo operador de colocación?

char * buf = new char[sizeof(T)]; new (buf) T; T * t = (T *)buf; //code... //here I should destruct *t but as it is argument of template and can be //instantiated via basic types as well (say int) so such code /*t->~T();*/ //is incorrect (maybe ...

3 la respuesta

Destructor explícito en contexto con plantilla

Quiero destruir explícitamente unvector en un contexto con plantilla. Lo siguiente funciona para mí (GNU C ++ 4.3, 4.4 y Clang ++ 1.1): template <typename T> void destroy_vector_owner(VectorOwner<T> *obj) { obj->v.~vector(); // further cleanup ...

3 la respuesta

Se requiere que los objetos que se trasladan para ser destruidos?

Si muevo-construyoa desdeb, sigue siendonecesari para destruirb, ¿o puedo escapar sin hacerlo? sta pregunta cruzó mi mente durante la implementación de unaoptional<T> modelo. Extracto ~optional() { if (initialized) { ...

2 la respuesta

Es un destructor recursivo para la lista vinculada, el árbol, etc., malo?

Para mi ejercicio de aprendizaje actual, estoy estudiando listas y árboles vinculados. Hace poco vi una sugerencia para destruir estructuras de datos de forma recursiva haciendo que cada nodo elimine su hijo / hijos. Sin embargo, en casi todos ...

3 la respuesta

¿Es el método __destruct necesario para PHP?

El manual dice que Se llamará al método destructor tan pronto como se eliminen todas las referencias a un objeto en particular o cuando el objeto se destruya explícitamente o en cualquier orden en la secuencia de apagado. ¿El PHP GC no es ...

7 la respuesta

la llamada explícita al destructor no está destruyendo mi objeto ¿por qué?

Llamo al destructor para desasignar memoria pero no está eliminando mi objeto. ¿Cuál es la razón detrás de esto? mi código es así: class A { public: int a; A() { cout << "a" << endl; } }; class B :public A { public: int b; B() { cout << "b" ...

1 la respuesta

¿Por qué está prohibido tomar la dirección de un destructor?

C ++ estándar en 12.4.2 establece que [...] No se tomará la dirección de un destructor. [...] Sin embargo, uno puede sin quejas del compilador tomar la dirección de un contenedor alrededor de un destructor de clases, de esta manera: struct ...