`
mmdev
  • 浏览: 12846525 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

c++学习笔记-指针和引用

 
阅读更多

指针和引用的区别

(1)引用是一个变量的别名,本身不单独分配自己的内存空间,跟原来变量共享内存空间;而指针需要重新分配自己的内存空间,用来保存指向对象的地址。
(2)引用访问一个变量是直接访问,而指针是间接访问。
(3)引用一经初始化就绑定到一个内存空间,且只能是这个内存空间的名字,定义时必须初始化。
(4)给引用赋值修改的是引用关联的对象的值(内存空间的值)。
下面的代码中,test_pointer函数中改变的是指针pa的值,使pa和pb指向了同一个对象,a和b的值没有变。test_reference函数中改变的是a的值,ra和rb仍然指向之前的对象,不过此时a和b的值相等。

#include<iostream>
 
using namespace std;
 
void test_pointer()
{
    int a = 1,b = 2;
    int *pa = &a,*pb = &b;
    pa = pb;
    cout << a << b << endl;
}
 
void test_reference()
{
    int a = 1,b = 2;
    int &ra = a,&rb = b;
    ra = rb;
    cout << a << b;
}


转载请注明来自:Alex Zhou,本文链接:http://codingnow.cn/c-c/484.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics