设为首页收藏本站优领域

优领域

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
优领域 优领域 IT领域 编程开发 C++ 查看内容

C/C++中的引用和指针

2011-11-4 00:25| 发布者: admin| 查看: 673| 评论: 0

摘要:   引用又称 别名,它可以最为对象的一个名字,但它既不是对象的指针,也不是对象的副本。   通过引用可以间接地操作对象,使用方式类似于指针,但不需要指针的语法。   使用规则:   1 引用被创建的同时必须 ...

  引用又称 别名,它可以最为对象的一个名字,但它既不是对象的指针,也不是对象的副本。

  通过引用可以间接地操作对象,使用方式类似于指针,但不需要指针的语法。

  使用规则:

  1>    引用被创建的同时必须被初始化,(指针可以在任何时候被初始化

  int a = 12;

  int &b = a;//正确

  int &c;//错误

  2>    一旦引用被初始化,就不能改变引用的关系(指针可以随时改变所指的对象)

  3>    引用的所有操作实际上都是应用在它所指的对象身上,包括取址操作符

  4>    不能有NULL引用,引用必须与合法的存储单元关联(指针则可以是NULL)

  直接访问:按变量地址存取变量值

  间接访问:通过变量地址的的变量去访问变量

  指针:指针就是它的值表示内存地址的变量

  如果两个指针都指向同一个数组中的元素,它们之间可以相减。

  任何指针之间都可以进行比较,测试它们相等或不相等。

  指针和引用的异同

  相同点:

  都是地址的概念,指针所指向的一块内存,它的内容是所指内存的地址,而引用则是某块内存的别名。

  不同点:

  1>    指针是一个实体,而引用是个别名

  2>    引用只能在定义时初始化一次,之后不可改变,指针则可以;引用“从一而终”,指针“见异思迁”

  3>    引用没有const,指针有const,有const的指针不可改变

  4>    引用不可为空,而指针可以为空

  5>    Sizeof引用得到的是所指变量(对象)的大小,而sizeof得到的是指针本身的大小

  6>    指针和引用的自增(++)运算意义不一样

  7>    引用是类型安全的,而指针不是(引用比指针多了类型检查)

相关阅读

网站统计|优领域|优领域 ( 粤ICP备12011853号-1 )  

GMT+8, 2019-8-23 21:42 , Processed in 0.050369 second(s), 12 queries .

Copyright © 2008-2014 优领域

回顶部