返回信息流#include "iostream"
using namespace std;
class A
{
public:
int &k;
public:
A(int i) : k(i)
{
}
};
int main(void)
{
A a(1);
a.k = 12;
cout<<a.k<<endl;
return 0;
}
在构造函数中引用k指向i,但是i不是只是构造函数里面的一个局部变量吗,为什么在执行完构造函数后,k引用还能使用呢
这是一条镜像帖。来源:北邮人论坛 / cpp / #77209同步于 2014/2/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
[问题]请教一个关于引用的问题
century
2014/2/27镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
栈段引用是安全的,就是通过mov eax, [esp + var_k]或者mov ecx, [esp + var_k]把主函数开辟的空间带进构造函数,然后在内部lea edx, [esp + var_i] mov [eax], edx给引用赋值