找回密码
 FreeOZ用户注册
查看: 1528|回复: 4
打印 上一主题 下一主题

[论坛技术] 突然犯晕,高人快来指点一下,又有新问题:请继续指点

[复制链接]
跳转到指定楼层
1#
发表于 16-3-2010 14:56:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
c++中,引用reference是不是只能在初始化的时候指定引用的对象? 表述不清楚,还是举例子吧。


比如有 string S1("ABC"), S2("DEF");
我想要一个 S1 的引用, 如果不是用在函数的参数里,是不是就要这么写:
string &Ref1 = S1;

我要请问的是,我能不能分成两步,第一步
string &Reg1;
然后再
Reg1 = S1; //??好像不对劲,这和普通的赋值(Reg1 = "XYZ")没区别了。
是不是可以写成
&Reg1 = S1;  //???看着还是有点不顺眼啊。

请问:有没有办法定义一个引用变量,然后程序中再动态的改变引用的对象呢? 比如后面换成
&Reg1 = S2;

谁来指点一下?

[ 本帖最后由 四香油饼 于 16-3-2010 15:26 编辑 ]
回复  

使用道具 举报

2#
发表于 16-3-2010 15:07:53 | 只看该作者
原帖由 四香油饼 于 16-3-2010 13:56 发表
比如有 string S1("ABC"), S2("DEF");
我想要一个 S1 的引用, 如果不是用在函数的参数里,是不是就要这么写:
string &Ref1 = S1;

我要请问的是,我能不能分成两步,第一步
string &Reg1;
然后再
Reg1 = S1; //??好像不对劲,这和普通的赋值(Reg1 = "XYZ")没区别了。

不行


是不是可以写成
&Reg1 = S1;  //???看着还是有点不顺眼啊。

只能string &Ref1 = S1;



请问:有没有办法定义一个引用变量,然后程序中再动态的改变引用的对象呢? 比如后面换成
&Reg1 = S2;

不行

评分

参与人数 1威望 +49 收起 理由
四香油饼 + 49 多谢老乞丐

查看全部评分

回复  

使用道具 举报

3#
 楼主| 发表于 16-3-2010 15:29:52 | 只看该作者
如果一个变量设成了 volatile
比如 volatile int x;
然后有一个 int *p = &x;

那么对我程序里面类似
m = *p;
这样的语句,volatile还起作用吗?
有没有
volatile int *p = &x; 这样的写法?? 或者这个语句确切的含义是什么呢?
回复  

使用道具 举报

4#
 楼主| 发表于 16-3-2010 16:52:17 | 只看该作者
俺已经试出来了,如果不写上 volatile int* p=xxx, c++编译都通不过,看来c++对数据类型匹配的要求确实很严格
回复  

使用道具 举报

5#
发表于 16-3-2010 17:27:49 | 只看该作者
油饼很好学
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 20-1-2025 09:05 , Processed in 0.035455 second(s), 22 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表