对象在什么时候初始化?
例1:
class A
{
public:
A(){
i = 1;
}
void get(A &a){
a.set(2);
}
void set(int x){ i = x;}
protected:
private:
int i;
};
void main(){
A b;
A c
b.get(c);
}
例2:
class A
{
public:
A(){
i = 1;
}
void get(){
a->set(2);
}
void set(int x){ i = x;}
protected:
private:
int i;
A a;
};
void main(){
A b;
b.get();
}
为什么例1可以运行,例2不可以运行!A的对象到底是在哪里初始化的!
[解决办法]
不懂,up