C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  117 Posts :: 2 Stories :: 61 Comments :: 0 Trackbacks

常用链接

留言簿(8)

搜索

  •  

最新评论

阅读排行榜

评论排行榜

 

1、 指针与引用的区别

      ①非空区别

      在任何情况下都不能使用指向空值的引用。一个引用必须总是指向某些对象,因此如果使用一个变量并让它指向一个对象,但是该变量在某些时候也可能不指向任何对象,这时应把变量声明为指针,因为这样可以赋空值给该变量。相反,如果变量肯定指向一个对象,这时可以把变量声明为引用。引用的代码效率比使用指针要高(为什么,可以看汇编)。

      ②合法性区别

      在使用引用之前不需要测试它的合法性,相反,指针应该总是被测试的,防止其为空。

      ③可修改区别

      指针可以被重新赋值以指向新的对象,但是引用则总是指向初始化时被指向的对象,以后不能够改变,但是指向的内容可以改变。

2、 实例代码

#include <iostream>
using namespace std;
int main()
{
    
char* p;
    
int i=2;
    
int & n=i;

    
//声明两个字符串数组
    char ch1[20]="abce";
    
char ch2[20]="1234";

    
    p
=ch1;    //p指向ch1
    cout<<p<<endl;
    p
=ch2;    //p指向ch2
    cout<<p<<endl;

    cout
<<"i = "<<i<<endl;
    cout
<<"n = "<<n<<endl;

    n
=5;    //对n重新赋值
    cout<<"i = "<<i<<endl;
    cout
<<"n = "<<n<<endl;
    
return 0;
}

输出结果如下所示:


       想要获得更多内容,可点击:《Visuanl C++代码参考与技巧大全》学习笔记——索引随笔
posted on 2010-02-15 15:16 烟皑 阅读(266) 评论(0)  编辑 收藏 引用 所属分类: 《Visual C++代码参考与技巧大全》学习笔记

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理