指针和C++的基本原理

C++这种面向对象的编程和类似Java只面向过程的区别:面向对象强调的是在运行阶段即运行阶段。好像C++是真人秀,什么样的表现取决于当天录节目是出现的各种情况。而面向过程呢,就像是话剧演员,是按照剧本一板一眼,剧情都是审定好的了。我们都知道,调试程序时候,分为编译阶段和运行阶段。例如数组,在C++中我们必须指定数组的长度。设定好了,这就是属于编译阶段决策。这样的方法我们就会出现浪费内存的状况。因为常常为了防止容量不足,比如在程序中,90%情况下,数组只需要80的长度。而剩余10%中,只需要20或者需要200的长度。这样的话我们至少要设定数组为200。如此,就会造成内存浪费的情况。OOP面向对象编程把决策推迟到运行阶段进行,很好的解决了这个问题。C++中使用new方法,请求正确数目的内存,并使用指针来跟踪重新分配的内存位置。

指针是一种特殊类型的变量,用于存储值的地址,使用运算符*。地址视为制定的量,值为派生量。

如下列程序:

#include "iostream"
using namespace std;
int main()
{
int andy =10;
    //定义一个指针
int *A_andy;
    //A_andy表示取到andy的地址
A_andy = &andy;
 
cout<<andy<<endl;
cout<<*A_andy<<endl;
cout<<&andy<<endl;
cout<<A_andy<<endl;
*A_andy=*A_andy+1;
cout<<andy<<endl;
while (1)
{
};
return 0;
}

程序运行结果如下:

 

 

由上所知:andy表示值,使用&andy来便是andy的地址。指针变量A_andy使用*A_andy来取得地址对应的值。如此就可以通过修改*A_andy的值来修改andy的值了。

希望能和奋斗在C++中的程序猿们一起讨论学习!!!

本人QQ:646167650

新浪微博: Andy_李政刚


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值