文章标队和栈的一些区别
来源:互联网 发布:美国钻井平台数据最新 编辑:程序博客网 时间:2024/05/23 11:50
具体详细信息:http://baike.baidu.com/link?url=eJo_J2PdOrWflio6PpPX64lX6lltMEWnw89G8jlGstYYshvUbYtU1eFf1KKWMP4mIlNSPO9R4e-d9mOH-XLNpq
编译器先处理int a= 3;首先它会在栈中创建一个变量为a的内存空间,然后查找有没有字面值为3的地址,没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。接着处理int b= 3;在创建完b的引用变量后,由于在栈中已经有3这个字面值,便将b直接指向3的地址。这样,就出现了a与b同时均指向3的情况。
特别注意的是,这种字面值的引用与类对象的引用不同。假定两个类对象的引用同时指向一个对象,如果一个对象引用变量修改了这个对象的内部状态,那么另一个对象引用变量也即刻反映出这个变化。相反,通过字面值的引用来修改其值,不会导致另一个指向此字面值的引用的值也跟着改变的情况。如上例,我们定义完a与b的值后,再令a=4;那么,b不会等于4,还是等于3。在编译器内部,遇到a=4;时,它就会重新搜索栈中是否有4的字面值,如果没有,重新开辟地址存放4的值;如果已经有了,则直接将a指向这个地址。因此a值的改变不会影响到b的值。
0 0
- 文章标队和栈的一些区别
- lomboz和一些J2EE相关的文章
- 有关安全和XML的一些文章
- 一些有用的网址和文章
- PGM的一些文章和书
- PGM的一些文章和书
- 一些有意思的文章和资源
- 一些有意思的文章和资源
- 读过的一些文章和体会
- node.js的一些书和文章
- Raphael和SVG一些文章的收集
- 一些有意思的文章和资源
- elasticsearch和 kibana的一些文章
- 堆和栈的区别(转过无数次的文章)
- 堆和栈的区别(转过无数次的文章)
- 堆和栈的区别--转过无数次的文章
- 转载无数次的文章--堆和栈的区别
- 堆和栈的区别【转过无数次的文章】
- html学习笔记3
- Git SVN 区别
- C++实验2-计算标准体重
- IOS学习 GCD 延时执行三种方法 并行/串行/主队列综合练习 队列组 shift+command+o快速查找
- Cannot create __weak reference in file using manual refrence counting.
- 文章标队和栈的一些区别
- Android四大组件
- apache kylin的二次开发
- 一步步优化JVM一:概述、方法及需求
- [渗透测试]扫目录,Sqlmap利用均超时,利用dirb扫描
- Socket编程-UdpClient的使用
- 单词统计、翻译、生成doc
- 线程的共享互斥
- C++作业-2