c++ 引用和static理解

引用:
1、引用是申明一种关系不是定义一个变量,所以不开辟空间。不单独存在必须要初始化指向某个东西。他是一个别名和指向的对象一样的实体,不是一个指针,所以不能按照指针 ->的方式访问,而是按照.xxx的方式访问。
2、当函数参数传递引用时候,就相当于说把传递参数的变量的作用域增加了,增加到了调用函数内部了。
3、引用其实是一个常量指针类似:int *p ->修饰成常量指针就变成了int * const p这样一样, 所以他要一开始就指向别人,而且不能改变。所以实际上他其实是有空间的,至少占用一个指针的空间。其实应用的本质就是指针。

Static:
static在C语言汇总重要修饰变量的作用域(文件内与有效)和存储位置 (静态变量区)。在C++中,static可以修饰成员变量+成员函数
1、修饰成员变量时候,起到了多个类对象之间的数据的共享。这个static成员变量部署那个对象实例而是数据这个类(相当于这个static变量数据这个类的命名空间),所以需要在类外面通过类的作用域比如int A::a = xxx方式类线初始化才行。不占用类的空间,存放在静态区存储的。
2、当static修饰成员函数时候,因为该函数不属于某个对象,所以在函数中没有隐含this指针了,所以不能在函数中向其他成员函数一样访问到累的非static成员。而智能访问static修饰的成员,这样就达到了协调对象之间共享数据的协调了。其实static函数的作用就是类用来提供给外面人用,在没有对象时候也可以通过该接口来访问类中定义的共享数据(static修饰的变量)。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值