#include <iostream>
#include <cstdlib>

class Exte {
	public:
		class Inte;
	private:
		int a;
		Inte* ptr;
	public: 
		Exte(void);
		~Exte(void);
		class Inte {
			public: 
				Inte(void);
				~Inte(void);
		};
};

Exte::Exte(void)
{
	std::cout << "creando Exte\n";
	ptr= new Inte();
}

Exte::~Exte(void)
{
	delete ptr;
	std::cout << "destruyendo Exte\n";
}

Exte::Inte::Inte(void)
{
	std::cout << "creando Inte\n";
}

Exte::Inte::~Inte(void)
{
	std::cout << "destruyendo Inte\n";
}


int main(int argc, char* argv[])
{
	Exte* p= new Exte();
	delete p;
	return EXIT_SUCCESS;
}

