码迷,mamicode.com
首页 > 编程语言 > 详细

Xcode学习C++(二、指针和引用)

时间:2015-03-31 19:24:44      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:

一:指针部分

指针是一种变量类型,声明指针变量需要分配独立的存储空间,指针可以为空『void』表示不指向任何对象。

指针里存储的值是一个地址,可以通过这个地址获取和改变所存储变量的值。

指针的类型必须与其所指向变量的类型一致,可以在任何时候改变指向的变量……

————————————————————这些是简单理论的啰嗦,下面说些代码相关的————————————————————————————

定义方式:int *p = &a;  *是指针的标识符,表示p是一个指针类型的变量,这里的变量a,必须是一个int类型。 &运算符可以获取变量的地址

取值方式:(可能有点绕)通过指针获取所指向变量的值是这样做的:*p

技术分享
int a = 10;
    int *pa = &a;
    cout<<a<<"----"<<*pa<<"----"<<&a<<"----"<<pa<<endl;
View Code

输出结果:10----10----0x7fff5fbff89c----0x7fff5fbff89c

可以看到通过*pa获取的值跟a的值一样,a的地址和pa的值也一直,说明指针类型的变量pa的值就是a的地址。

关于指针呢,还有很多东西可以讲,比如指针运算、指向指针的指针、指针方法的指针、指针作为函数参数等等,下次针对指针专门来写写看

二:引用部分

有JAVA或C#等语言基础的人对于引用的认识估计和指针没什么区别,在C++里这两者区别甚大,这也是我学习C++到目前为止跟之前知识体系差距最大的一点。

C++中引用其实就是给变量起一个别名,引用没有自己独立的存储空间,与它引用的变量共享能存,对引用的操作就是对变量的操作(真假美猴王)。

定义方式 int &f = a; &这里又是引用的标识符,f是一个对变量a的引用。f的类型是int那么a的类型也必须是int。

技术分享
int a = 10;
int &fa = a;
cout<<a<<"----"<<fa<<"----"<<&a<<"----"<<&fa<<endl;
View Code

输出结果:10----10----0x7fff5fbff89c----0x7fff5fbff89c

可以看到引用fa的值和地址与变量a的值和地址一致。

引用的使用注意点:定义的时候初始化 int &fa; fa = a;这么先定义后初始化的方式直接报错(引用是没有内存空间的)

Xcode学习C++(二、指针和引用)

标签:

原文地址:http://www.cnblogs.com/luseike/p/4381491.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!