cout<<n 是 int & m = getInt(999)的值,这个可以理解。
但是,cout<<m 竟然是个 4327480这么个怪数。。
按说 n 和 m 都引用t 起码值是一个啊。而且看地址n 和 m 也是一个地址 即 t 的地址。。那么为什么 m 是4327480这么个怪数呢?
但是,cout<<m 竟然是个 4327480这么个怪数。。
按说 n 和 m 都引用t 起码值是一个啊。而且看地址n 和 m 也是一个地址 即 t 的地址。。那么为什么 m 是4327480这么个怪数呢?
代码:
#include <iostream>
using namespace std;
int & getInt(const int v)
{
int t = v;
cout << &v << endl;
cout << &t << endl;
return t;
}
int main()
{
int & n = getInt(887);
int & m = getInt(999);
cout << "n=" << n << endl;
cout << &n << endl;
cout << "m=" << m << endl;
cout << &m << endl;
}