首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

VC++ 里面引用的一点小疑问解决方案

2012-04-27 
VC++ 里面引用的一点小疑问测试:classtest1{public:string&gs(){string* anew string(xxxxxx)cout(i

VC++ 里面引用的一点小疑问
测试:
classtest1
{
public:
string& gs()
{
string* a=new string("xxxxxx");
cout<<(int)a<<endl;//输出地址1
return (*a);
}
};

int _tmain(int argc, _TCHAR* argv[])
{
test1* aa=new test1();
string bb; 
bb=aa->gs();
string* cc=&bb;//按照我的理解 cc就是上面的地址1啊????
cout<<(int)cc<<endl;//但是不相等
system("pause");
return 0;
}
为什么???? 完毕.

[解决办法]
string& gs()函数返回的是引用,但是函数调用结束后临时变量a释放了
怎么能用来引用呢?
[解决办法]
bb明明的新的变量啊
你是把a的内容赋给了bb啊
return(*a);
这句和地址已经没关系了

热点排行