嵌套类以及引用的使用实例:
#include
class A
{
private:
int m;
public:
A(){}
A(int v){this->m=v;B b(2);b.printn();}
void printm(){cout<<"m="<<m<<endl;}
class B
{
private:
int n;
public:
B(){}
B(int v){n=v;}
void printn(){cout<<"n="<<n<<endl;}
};
};
int n=0;
int & fun(int m)//引用作为返回值时,应注意引用不能返回局部变量以及动态生成的内存
{
n+=m;
return n;
}
int main()
{
A a(5);
A &t=a;//对象引用
t.printm();
int *pa,i=22;
int *&pb=pa;//指针的引用
pb=&i;
cout<<"*pb="<<*pb<<"pb="<<pb<<endl;
//调用返回引用的函数
fun(3)+=6;
cout<<n<<endl;
A::B b(20);//嵌套类的对象的定义
b.printn();
return 0;
}