1.用一个对象去初始化另一个对象
详细代码:
#include<iostream>
using namespace std;
class AA
{
public:
int *a;
public:
AA();
AA(AA& b);
~AA();
void fun(AA a);
};
AA::AA()
{
a = new int(100);
}
AA::AA(AA& b)
{
a = new int;
*a = *b.a;
}
AA::~AA()
{
delete a;
}
AA::void fun(AA a)
{
cout<<a.a<<endl;
}
AA F()
{
AA a;
a.a=100;
return a;
}
int main()
{
AA a;
cout << *a.a<< endl;
//1.用一个对象初始化另一个对象
AA a1 = a;
cout << *a1.a << endl;
//2.类对象作为函数参数时
AA a2;
a2.a=100;
cout<<fun(a2)<<endl;
//3.类对象作为返回值时
cout<<F().a<<endl;
system("pause");
return 0;
}
AA a;
AA a1=a;
//不属于用一个对象初始化另一个对象
AA a;
AA a1;
a1=a;//叫赋值
2.类对象作为函数参数时
AA::void fun(AA a)
{
cout<<a.a<<endl;
}
3.类对象作为返回值时
AA F()
{
AA a;
a.a=100;
return a;
}