#include <iostream.h>
class CTwo
{
public:
int out;
CTwo(int i)
{ out = i * 2; }
};
class COne
{
public:
COne()
{}
int mid;
void calc()
{ mid = 2; }
//在执行完calc之后才会产生正确的mid
//才能用mid作为CTwo的构造函数的参数来实例化CTwo
CTwo bbb(mid); //这里出错,但是就是这个意思。不过CTwo实例化实际上应该放在calc执行之后
};
void main()
{
COne aaa;
aaa.calc();
cout<<aaa.bbb.out<<endl; //希望最后输出CTwo类中的out值 应该是2*2=4
}
CTwo是一个内部的类,是不能改动的,只能改动COne
class CTwo
{
public:
int out;
CTwo(int i)
{ out = i * 2; }
};
class COne
{
public:
COne()
{}
int mid;
void calc()
{ mid = 2; }
//在执行完calc之后才会产生正确的mid
//才能用mid作为CTwo的构造函数的参数来实例化CTwo
CTwo bbb(mid); //这里出错,但是就是这个意思。不过CTwo实例化实际上应该放在calc执行之后
};
void main()
{
COne aaa;
aaa.calc();
cout<<aaa.bbb.out<<endl; //希望最后输出CTwo类中的out值 应该是2*2=4
}
CTwo是一个内部的类,是不能改动的,只能改动COne