Preguntas etiquetadas con delete-operator

En el lenguaje de programación C ++, el operador de eliminación llama al destructor del argumento dado y devuelve la memoria asignada por new al montón.










6
Eliminar un puntero en C ++
Contexto: Estoy tratando de entender los consejos, los vimos hace un par de semanas en la escuela y mientras practicaba hoy me encontré con un tonto problema, puede ser muy sencillo para usted, pero tengo poca o ninguna experiencia en programación. He visto bastantes preguntas en SO sobre la eliminación …

5
Eliminar un puntero a const (T const *)
Tengo una pregunta básica sobre los punteros const. No puedo llamar a ninguna función miembro que no sea constante usando un puntero constante. Sin embargo, puedo hacer esto en un puntero constante: delete p; Esto llamará al destructor de la clase que, en esencia, es un 'método' no constante. ¿Por …

5
¿Cómo se 'reasigna' en C ++?
¿Cómo puedo hacerlo reallocen C ++? Parece que falta en el lenguaje - ¡hay newy deletepero no resize! Lo necesito porque a medida que mi programa lee más datos, necesito reasignar el búfer para contenerlo. No creo que deleteusar el puntero antiguo y newuno nuevo y más grande sea la …

2
¿Todavía es seguro eliminar nullptr en c ++ 0x?
En c++03está bastante claro que eliminar un puntero nulo no tiene ningún efecto. De hecho, se afirma explícitamente en §5.3.5/2que: En cualquier alternativa, si el valor del operando de eliminar es el puntero nulo, la operación no tiene ningún efecto. Sin embargo, en el borrador actual de c++0xesta oración parece …


3
¿Por qué no se llama al destructor en el operador delete?
Traté de llamar ::deletepara una clase en el operator deletemismo. Pero el destructor no se llama. Definí una clase MyClassque operator deleteha sido sobrecargada. Lo global operator deletetambién está sobrecargado. El sobrecargado operator deletede MyClassllamará al global sobrecargado operator delete. class MyClass { public: MyClass() { printf("Constructing MyClass...\n"); } virtual …

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.