A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑玉赛 中级黑马   /  2012-5-12 16:04  /  1595 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑玉赛 于 2012-5-13 09:56 编辑

看到有人说string类型和int类型不一样,string类型赋值之后如果再次进行赋值,不是改变原来内存空间上的值,而是再开辟一个内存空间,让变量指向新的值。 这个句话该怎么理解,能不能举个例子参考下

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

3 个回复

倒序浏览
就相当于你拿一杯装满水的杯子,倒了重新再装满水。。。。虽然水是新装的。。以前倒出来的水还在。。。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
  1. string var1 = "111";
  2. string var2 = var1;
复制代码
比如上面:
初始化var1时,内存为var1分配了一个空间
把var1的值赋给var2时, 也引用了这个空间 所以var1和var2的值相同都是111

如果要改变var1 = ''222", 不会改变原有空间的值,而是新建一个空间把值赋给var1
所以这个时候var2的值还是111



评分

参与人数 1技术分 +2 收起 理由
宋天琪 + 2

查看全部评分

回复 使用道具 举报
{:soso_e100:}问题已经解决,感谢大家。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马