C++引用的内部机制,及于指针的区别
来源:互联网 发布:mysql和mariadb兼容性 编辑:程序博客网 时间:2024/05/16 14:55
引用在内部存放的是一个对象的地址,它是该对象的别名。对于不可寻址的值以及不同类型的对象,编译器为了实现引用,必须生成一个临时对象,引用实际上指向该临时对象,用户不能访问它。若此时我们修改引用的值,实际上修改的是临时变量的值,不会修改用来初始化引用的那个对象的值。
--引用《C++ primer中文版》
例子:
将地址运算符作用于引用:
#include <iostream>
using namespace std;
int main()
{
int a=2;
int& r_a=a;
cout<<"&a="<<&a<<endl;
cout<<"&r_a="<<&r_a<<endl;
return 0;
}
运行结果:
&a=0x22ff74
&r_a=0x22ff74
请按任意键继续. . .
指针与引用的区别:
(1)引用必须总指向一个对象,而指针可以为NULL,表示该指针不指向任何对象;
(2)如果用一个引用给另一个引用赋值,那么改变的是被引用的对象,而不是引用本身,换句话说,引用一旦被初始化指向某个对象,则该引用不会再去指向其他对象;而指针不同,指针之间赋值改变的是指针本身。
什么情况使用引用、指针:
在以下情况下你应该使用指针,一是你考虑到存在不指向任何对象的可能(在这种情况下,你能够设置指针为空),二是你需要能够在不同的时刻指向不同的对象(在这种情况下,你能改变指针的指向)。如果总是指向一个对象并且一旦指向一个对象后就不会改变指向,那么你应该使用引用。
- C++引用的内部机制,及于指针的区别
- 引用于指针的区别
- 引用于指针的区别
- 引用于指针的区别
- 指针和引用的区别于联系
- c++指针于引用的区别
- c++指针于引用的区别
- 【C++】指针&引用的区别
- 引用于指针的区别(java如何寻址)
- 【C/C++】引用和指针的区别
- 【C/C++】指针与引用的区别
- c++引用的内部机制
- ~引用及与指针的区别/联系~
- C语言中引用及指针和引用的联系与区别
- 指针与引用的区别 (MoreEffictive C++)
- C/C++ 指针与引用的区别
- 指针和引用的区别(C++)
- C程序设计语言--指针和引用的区别
- 一些T-SQL语句
- Linux环境进程间通信(二): 信号(上)
- Cisco interview
- 把一个文件夹下所有文件,移动到另一个文件夹,不要目录,只要文件
- java.lang.OutOfMemoryError: PermGen space Solving Tomcat OutOfMemoryError: Heap space and PermGen space
- C++引用的内部机制,及于指针的区别
- CSDN的博客……
- 统计文件中某个词的个数
- MySQL replace into 用法
- Hunan Dream Fireworks
- 图片加水印
- makefile .c.o的说明
- 使用Excel COM组件导出数据后释放 Excel进程不能正常结束
- cadence 如果拷贝别人图纸中的原件封装