class Test
{
public:
    Test();
	~Test();
};
 
#include <memory>
 
class Test;
 
class Trouble
{
public:
    Trouble();
 
private:
	std::auto_ptr<Test> Test_;
};

int main(int argc, char* argv[]) 
{
    Trouble trouble;
	return 0;
}

Trouble::Trouble()
    : Test_(new Test())
{
}
#include <stdio.h>
Test::Test()
{
    printf("Test()\n");
}
 
Test::~Test()
{
	printf("~Test()\n");
}