当前位置: 首页 > news >正文

上海网站开发制作广东省住房城乡建设厅门户网站

上海网站开发制作,广东省住房城乡建设厅门户网站,东莞网站推广衣裙,如何注册一个自己的网站1. 指针和引用 1.1 定义和性质区别 指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。可以有const指针,常量指针可以改…

1. 指针和引用

1.1 定义和性质区别

  1. 指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。
  2. 可以有const指针,常量指针可以改变指向,指针常量不能改变指向,也可以有const引用,引用的指向不能改变
  3. 指针可以有多级,但是引用只能是一级(int **p;合法 而 int &&a是不合法的)
  4. 指针的值可以为空,但是引用的值不能为NULL,并且引用在定义的时候必须初始化
  5. 指针的值在初始化后可以改变,即指向其它的存储单元,而引用在进行初始化后指向的内存单元不再改变;
  6. “sizeof引用”得到的是所指向的变量(对象)的大小,而”sizeof指针”得到的是指针本身的大小,即地址的大小;
  7. 指针和引用的自增(++)运算意义不一样;

1.2 指针和引用作为函数参数进行传递时的区别

用指针传递参数,可以实现对实参进行改变的目的,是因为传递过来的是实参的地址,因此使用*a实际上是取存储实参的内存单元里的数据,即是对实参进行改变,因此可以达到目的。

在将引用作为函数参数进行传递时,实质上传递的是实参本身,即传递进来的不是实参的一个拷贝,因此对形参的修改其实是对实参的修改,所以在用引用进行参数传递时,不仅节约时间,而且可以节约空间。、

1.3 何时使用引用和指针

指向空值,可改变指向,多级传递:指针;可用引用的地方都可用用指针,反之不行。

2. 内联函数和普通函数的区别

普通函数调用时会使程序跳到另一个地址(函数的地址),并且在函数结束时返回。

  1. 执行函数调用指令,立即存储该指令的地址,并将函数参数保存到的堆栈。
  2. 跳到函数起点的内存单元,执行函数代码(将返回值保存到寄存器中。
  3. 跳回被保存指令的地址处。

1、在编译过程中,内联函数在函数的调用点,把函数代码全部展开,所以没有标准函数的栈帧的开辟和回退
如果 调用函数的开销 > 函数执行的开销,那么就建议写为内联函数
调用的开销:函数的栈帧的开辟和回退
执行的开销:函数体内代码执行的开销

2、内联函数只在本文件可见,编译阶段就进行了替换,所以不产生符号,所以一般在头文件中定义,这样就可以在其它文件调用。普通函数产生符号,多个文件引用头文件,会产生符号重定义的错误。
.编译阶段不编译.h文件,只编译.c 或.cpp 文件

注意:inline只在release版本起作用,debug版本inline函数也需要栈帧的开辟和回退

思考?

我们说到内联函数是编译器用函数相应的代码替代了函数调用

那内联函数还遵循按值传递参数吗?

a到底是0还是1?

inline void fun(int a){a=1;}int main(){int a=0;fun(a);cout<<a;return 0;
}

 在编译器看来:

inline void fun(int a){a=1;}int main(){int a=0;a=1; //fun(a);cout<<a;return 0;
}

输出结果:

输出表明,内联函数和普通函数一样,都是按值传递参数。 

http://www.yayakq.cn/news/461118/

相关文章:

  • 上海市建设咨询协会网站网站设计制作哪种快
  • 东营市垦利区胜坨填建设站的网站网站素材模板
  • 网站建设在电子商务中的作用的看法山东省建设银行网站
  • 想看外国的网站怎么做wordpress注册没有界面
  • 在四川省住房和城乡建设厅网站上查建设银行网站怎么看不见余额
  • 嘉兴网站排名优化报价国外高端网站
  • 做网站番禺汽车o2o网站建设
  • 服务器网站源码在哪西昌手机网
  • 网站建设前的规划外贸建站推广
  • 医院网站域名备案建设局官方网站
  • 做色流网站要注意什么有哪些线上做酒店的网站
  • wordpress 多个注册表单上海外贸网站优化
  • 学会了vue 能搭建一个网站平台软考中级哪个含金量高
  • 国外好看的教育类网站模板下载广告设计需要学什么
  • 湖州高端网站建设公司苏州网站建设2万起
  • 购物网站的英文影视会员网站怎么建设
  • 有没有做机械加工的网站南宁网站建设怎样建立一个好网站
  • 芜湖建设公司网站做网站后台用什么软件
  • 珠海哪个公司建设网站好对网站做维护
  • 常用的网站开发语言有哪些有了源码怎么搭建网站
  • 专业的网站建设宝安西乡手机优化系统
  • 做房地产一级市场的看什么网站江苏艺居建设有限公司网站
  • 怎么编写一个网站wordpress git
  • 专业建网站的学校建筑公司网站源码下载
  • 长治市郊区住房建设局网站公司网站建站公司
  • 如何做网站管理维护地推
  • 百度上推广一个网站该怎么做外贸公司系统管理软件
  • 网站建设鞍山郑州网站推广公司电话
  • 做薪酬调查的网站dedecms 网站迁移
  • 上海轨道交通建设查询网站网站备案 哪个省最松