Código c++:
Ver original
#include "stdafx.h" #include <iostream> #include <cstdio> #include <cstring> class BASE { public: char *cadena; virtual ~BASE() { delete[] cadena; } virtual void Hablar() { std::cout << cadena << std::endl; } }; class DERIVADA : public BASE { public: char *cadena; ~DERIVADA() { delete[] cadena; } virtual void Hablar() { std::cout << cadena << std::endl; } }; int main(int argc, _TCHAR* argv[]) { BASE *base = new DERIVADA; delete base; return 0; }
Me da un error en tiempo de ejecucion ¿porque? ¿que estoy haciendo mal?