C++中引用与指针有什么区别
2013-10-12 15:46
691 查看
1、从内存分配方面来讲,系统为指针变量分配存储空间,而引用与绑定的变量共享内存空间,系统不另外为引用变量分配存储空间。指针是一个实体,而引用仅仅是另一个变量的别名。
2、引用必须初始化,而指针不必,指针可以在需要的时候进行赋值。
3、引用一旦初始化就不能再绑定到其他变量,而指针可以重新指向其他变量的地址。
4、引用不能指向空值(NULL),而指针可以指向空值(NULL)。
5、引用使用时不需要解引用(*),指针需要解引用。
6、“sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小。
7、引用和指针进行算术操作(赋值,自增/自减)的意义不同。
int main(int argc, char *argv[]) { int i = 0; int &r = i; int *p = &i; cout << "&i = " << &i << endl; cout << "&r = " << &r << endl; cout << "&p = " << &p << endl; return 0; }
2、引用必须初始化,而指针不必,指针可以在需要的时候进行赋值。
3、引用一旦初始化就不能再绑定到其他变量,而指针可以重新指向其他变量的地址。
4、引用不能指向空值(NULL),而指针可以指向空值(NULL)。
5、引用使用时不需要解引用(*),指针需要解引用。
6、“sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小。
7、引用和指针进行算术操作(赋值,自增/自减)的意义不同。
相关文章推荐
- C++ 中指针和引用的什么区别
- C++ 中指针和引用的什么区别
- java的引用和C++的指针有什么区别
- C++小知识:引用和指针的区别是什么?
- C++ 中指针和引用有什么区别详解
- C++中指针和引用有什么区别?
- Java的引用和C++的指针有什么区别?
- java的引用和c++的指针有什么区别
- C++中指针和引用的区别
- C++中指针和引用的区别
- 指针和引用区别(More Effective_C++_1(基础))
- 【C++】指针与引用的区别
- C++指针和引用的区别
- C++中指针和引用的区别
- C++中指针和引用的区别
- 引用和指针有什么区别,汇编分析(最真实)
- 详解C++中指针(*)、取地址(&)、解引用(*)与引用(&)的区别
- C++中指针和引用的区别
- C++中指针和引用的区别
- C++中引用传递与指针传递区别