查看网站的外链,wordpress伪静态怎么弄,微信小程序开发技术栈,用mediawiki做的网站1、引用的概念 1.引用不是新定义一个变量#xff0c;而是给已存在变量取了一个别名 2.编译器不会为引用变量开辟内存空间#xff0c;它和它引用的变量共用同一块内存空间 比如:孙悟空#xff0c;可以叫他孙悟空#xff0c;也可以叫齐天大圣。本质他们就是一个人 2、引用的定…1、引用的概念 1.引用不是新定义一个变量而是给已存在变量取了一个别名 2.编译器不会为引用变量开辟内存空间它和它引用的变量共用同一块内存空间 比如:孙悟空可以叫他孙悟空也可以叫齐天大圣。本质他们就是一个人 2、引用的定义
我们如何定义一个引用呢 类型 引用变量名(对象名) 引用实体 int a 100;int ra a; //定义引用类型printf(%p\n, a);printf(%p\n, ra);在这里就是相当于一个实体取了两个名字分别为a和ra并且在这个空间中不开辟新的空间
注意引用类型必须和引用实体是同种类型的
3、引用的特性
定义引用时必须给初始化没有空引用引用一旦引用一个实体再不能引用其他实体了一个变量可以有多个引用就相当于一个变量有好几个别名) int a1; //没有初始化int a2 nullptr; //没有空引用引用本身是一个变量它不占用内存空间它和指针不一样它仅仅是一个别名
3、引用和指针的区别
在语法概念上引用就是一个别名没有独立空间和其引用实体共用同一块空间 在底层实现上引用实际是有空间的因为引用是按照指针方式来实现的 引用的主要用途是:修饰函数的形参和返回值. 在C语言中,函数的参数和返回值的传递方式有三种:值传递,指针传递和引用传递。引用具有指针的效率,又具有变量使用的方便性和直观性. 实际上引用可以做的事,指针都可以做,为什么还要引用呢? 引用体现了最小特权原则,即给予程序元素完成其功能的最小权限. 指针能够毫无约束的操作内存中的任何东西,尽管功能强大,但是非常危险. 引用指针引用定义一个变量的别名储存一个变量的地址引用必须初始化无要求引用一个实体后不能再引用其他实体无要求没有空引用有空指针没有多级引用有多级指针引用的权限小指针的权限比较大