C++函数的参数

1. 每次调用函数时都会重新创建函数的形参,此时所传递的实参则用来初始化创建的形参.

2. 形参的初始化和变量的初始化是一样的方式,如果形参是引用类型则是实参的一个别名,如果形参是非引用类型,那么则会复制该实参用来初始化形

参.

 

 

1. 指针形参

 

指针形参是作为值类型来进行传递的,也就是说修改指针所指向的对象是无效的,而修改指针指向对象的值是有效的.

例如

 

指针A - > 对象V

指针B - > 对象V

 

*A=100; 有效,因为不管形参是不是实参的副本,或者说不管是形参还是实参他们都是指针而指针的基础则是指向一个对象,那么指针A和指针B则是指向同一个对象的指针,则修改指针所指向的对象的值是有效的,而把指针A指向另一个对象则相对实参指针来说是无效的.

 


注意: 可以将指向const对象的指针初始化为非const的对象,但是不可以让非const的指针初始化为const对象,这点源于值类型初始化是复制初始化式的值.

 

值初始化并不是在所有情况下都适合的:

1.      需要在函数中修改实参的值.

2.      当需要以大型对象作为实参时,付出的复制对象的时间和存储空间将会很大.

3.      当没有办法实现对象的复制时(如类类型没有或者没有public的构造函数)

 

 

2. 引用实参

 

使用引用形参则可以避免上述的3个问题,引用实参也是每次调用函数时进行创建相关的形参,之后关联上对应的实参.

参数设置为引用类型的参数,则在函数体内的任何改变引用所指向对象的值的操作都将关联到实参.

 

使用引用形参还可以返回额外的一些信息,比如函数的返回值只能有一个,当需要返回多个值时,则可以选择使用引用参数进行实现.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的精简博客系统,源码+数据库+毕业论文+视频演示 当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。以前企业对于博客信息的管理和控制,采用人工登记的方式保存相关数据,这种以人力为主的管理模式已然落后。本人结合使用主流的程序开发技术,设计了一款基于Springboot开发的精简博客系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本系统主要使用B/S开发模式,在idea开发平台上,运用Java语言设计相关的系统功能模块,MySQL数据库管理相关的系统数据信息,SpringBoot框架设计和开发系统功能架构,最后通过使用Tomcat服务器,在浏览器中发布设计的系统,并且完成系统与数据库的交互工作。本文对系统的需求分析、可行性分析、技术支持、功能设计、数据库设计、功能测试等内容做了较为详细的介绍,并且在本文中也展示了系统主要的功能模块设计界面和操作界面,并对其做出了必要的解释说明,方便用户对系统进行操作和使用,以及后期的相关人员对系统进行更新和维护。本系统的实现可以极大地提高企业的工作效率,提升用户的使用体验,因此在现实生活中运用本系统具有很大的使用价值。 关键词:博客管理;Java语言;B/S结构;MySQL数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值