引用小记

1、非const类型的变量默认为extern,const类型的变量要想在其他文件中引用,必须显示的指定它为const。

2、引用(reference)就是对象的另一个名字。在实际程序中,引用主要用作函数的形式参数。不能定义引用类型的引用,但可以定义任何其他类型的引用。当引用初始化后,只要该引用存在,他就保持绑定到初始化时指定的对象。不可能将引用绑定到另一个对象。

3、const引用指向const对象的引用:

const int ival = 1024;

const int &refval = ival;  //ok, both reference and object are const

int &ref2 = ival;            //error, nonconst reference to a const object

"const 引用"意思是“指向const对象的引用”,“非const引用”表示指向非const类型的引用。

4、const引用可以初始化为不同类型的对象或者初始化为右值,如字面值常量:

int i = 42;

const int &r = 42;

const int &r2 = r + i;

同样的初始化对于非const引用却是不合法的。

5、非const引用只能绑定到与该引用类型的对象。

const引用则可以绑定到不同但相关的类型的对象或绑定到右值。

时间: 2024-10-11 20:05:15

引用小记的相关文章

C++引用小记

C++这么强大而且基础的语言我接触的实在太少了,自责一下大学四年浪费了好多光阴.今天又来学学C++,视频讲解的很有意思,让我明白了很多.记下来给以后的我看看. 1.引用就是取外号,各种类型的变量都可以有自己的外号,结构体也可以,对外号操作相当于对它本身操作.阿刚是我儿子和我寝室的范某是我儿子是一个意思哈哈哈.哎呦我的好兄弟怎么能是我儿子呢,他是我孙子~~. 2.人不能只有外号,一个人如果只有外号那外号就是他真正的名字了,外号自然也就不成立了.所以引用必须初始化. 3.引用做函数参数太好用了.一张

关于undefined,null,NaN,以及引用值的一点小记

在JavaScript中,undefined以及null同样是表示空值(没有实际意义). undefined == null; 事实上,上面这段代码的返回结果也是true,然后他们俩有什么区别吗,首先是语义上面的区别,undefind在JavaScript中表示的是已经声明了,但是没有赋值,相当于是对只是被声明了的状态的表示,是的没错,我更愿意把他理解为一种状态,而null就更像是一个值了,他表示的就是一个空,就是啥都没有,实际上也是一种状态(至少我是这么理解的). NaN也是一个比较有趣的值.

关于自动化部署之docker容器的折腾小记

docker的英文本意是码头工人,也就是搬运工,这种搬运工搬运的是集装箱(Container),集装箱里面装的可不是商品货物,而是任意类型的App,Docker把App(叫Payload)装在Container内,通过Linux Container技术的包装将App变成一种标准化的.可移植的.自管理的组件,这种组件可以在你的latop上开发.调试.运行,最终非常方便和一致地运行在production环境下. 具体什么是docker,你们自己找资料吧,应该好理解.   可以说是个运维的利器,可以把

与webView进行交互,webView小记

本文转载至 http://www.verydemo.com/demo_c101_i46895.html 一.与webView进行交互,调用web页面中的需要传参的函数时,参数需要带单引号,或者双引号(双引号需要进行转义在转义字符前加\),在传递json字符串时不需要加单引号或双引号. 1 -(void)webViewDidFinishLoad:(UIWebView *)webView 2 { 3     NSString *sendJsStr=[NSString stringWithFormat

linux学习小记 (一 )

shell 学习小记: 注意:多看系统脚本  多模仿    su切换用户时需要输入目标用户密码,root(superuser)切换到任何用户都不需要输入密码,- 参数必须要是最后一个(su huhu -) sudo需要输入当前用户密码,拥有sudo特权的用户可以执行 "sudo su -"命令,使用自己的密码切换到root用户 , 所以应该在/etc/sudoers 文件中禁止 sudo 执行su命令 linux文件与颜色: /etc/DIR_COLORS   (命令dircolors

mvc问题小记

工作中使用到mvcpager插件,在开发环境win7+iis7.5环境下,不需要配置,直接引用即可使用.但是无奈还有网站发布这一项工作,服务器环境server2008+iis7,部署之后出现问题. 当访问到调用mvcpager这个插件时就报如下错误: Server Error in '/' Application.The WebResource.axd handler must be registered in the configuration to process this request.

浏览器兼容性小记-DOM篇(一)

1.childNodes引入空白节点问题:使用childElementCount或children 2.innerText: FF中不支持该属性,使用textContent代替 3.变量名与某HTML对象id相同时,引用该变量只会取得id名与其相同的html对象(ie8-):声明变量时前面一律加上var,尽量避免id名与变量名相同 4.为ele.style.property赋值时一律带上单位:e.style.height= 34 + 'px' 5.禁止选择网页内容: //IE document.

Android开发注意点小记

暂时主要讨论以下几点: Android引用外部包,报NoClassDefFoundError异常崩溃 同名包引用关系问题 程序图标 9patch图片素材 Android引用外部包,程序报java.lang.NoClassDefFoundError异常崩溃 在Android工程中,引用第三方jar包(尤其是经过本地编译的),在Java代码开发环境中正常编译输出,但到手机等设备上运行时一旦运行到引用该包的代码,立即异常崩溃,系统显示进程意外停止提示窗口,LogCat报出异常信息 dalvikvm C

浏览器兼容性小记-DOM篇(二)

1.DOM中的所有节点都继承自Node类型,IE9之前将DOM节点作为COM对象来实现:每个DOM节点都有一个nodeType属性来表明节点类型,总共有12个类型: 1 Node.ELEMENT_NODE 2 Node.ATTRIBUTE_NODE 3 Node.TEXT_NODE 4 Node.CDATA_SECTION_NODE 5 Node.ENTITY_REFERENCE_NODE 6 Node.ENTITY_NODE 7 Node.PROCESSING_INSTRUCTION_NODE