#include <iostream>
using namespace std;
class A
{
public:
A(int i)
{
x=i; /* 声明与合并的成员"隐士内联函数" */
}
int get()
{
return x;
}
private:
int x;
};
A &func(); // 子函数的声明.
int main()
{
A &r=func(); //定义了一个 类A的引用,并调用func子函数. 接到来自func中类A对象a的引用
cout<<r.get()<<endl; //利用子函数构造的对象a,来输出,因为子函数func 是局部对象在 栈中开辟的空间,所以子函数
return 0; //结束,直接释放了内存空间,与是 r引用输出的是任意一块地址内存内容,为随机值.
}
A &func() /* 函数体实现. */
{
A a(23); //子函数 func 中 定义了类A的对象a.并返回对象a的地址.回交给引用.
return a;
}