Пытался сделать для линухов чтобы тоже.
Не попал.
В винде на экспрессе норм.
Забыл про инклюды.
Только что собрал.Пишет "в третьем".
#include <windows.h>
#include <tchar.h>
#include <string>
#include <iostream>
struct First;
struct VCons
{
First* first;
VCons()
{}
~VCons();
};
struct First
{
First(VCons& vc=VCons())
{
vc.first = this;
}
virtual void Print()
{
std::cout<<"in First"<<std::endl;
}
void Init()
{
Print();
}
};
struct Second : public First
{
Second(VCons& vc=VCons()) : First(vc)
{}
void Print()
{
std::cout<<"in Second"<<std::endl;
}
};
struct Third : public Second
{
Third(VCons& vc=VCons()) : Second(vc)
{}
void Print()
{
std::cout<<"in Third"<<std::endl;
}
};
VCons::~VCons()
{
first->Print();
}
int _tmain(int argc, _TCHAR* argv[])
{
Third s;
int i=0;
std::cin>>i;
return 0;
}