引用就相当于被引用对象的一个别名int m;int &n=m;这里对n的操作就是对m的操作;对于引用有以下几条规则需要遵守:1.在创建的时候必须同时被初始化2.不能有NUll(空)引用3.初始化之后不能再改变他的值引用一般用在函数参数以及返回值,这个就联系到了之前遇到的一个错误了,见http://w...
分类:
编程语言 时间:
2016-01-13 12:49:40
阅读次数:
143
变量、作用域和内存问题1、变量可能包含两种不同数据类型的值;基本类型值以及引用类型值;引用类型值保存的是内存中的对象2、对象是按值传递的,function setName(obj){ obj.name="zhang"; obj=new Object(); obj.name="hui";}var pe...
分类:
Web程序 时间:
2016-01-12 01:13:56
阅读次数:
211
上篇博客对右值、右值引用都做了简要介绍。我们也要时刻清醒,有时候右值会转为左值,左值会转为右值。
(也许“转换”二字用的不是很准确)如果我们要避免这种转换呢?
我们需要一种方法能按照参数原来的类型转发到另一个函数中,这才完美,我们称之为完美转发。std::forward就可以保存参数的左值或右值特性。因为是这样描述的:
When used according to the following...
分类:
编程语言 时间:
2016-01-09 01:04:30
阅读次数:
234
Object类顶级toString()方法一般都要重写返回对象文本描述被很多API调用==比较变量的值,引用变量的值是地址值,引用变量==比较的是地址值不能用于比较逻辑上对象是否相等equals方法一般要重写(重写时也要重写hashCode方法)Object的equals方法用于对象的相等逻辑instanceofja..
分类:
编程语言 时间:
2016-01-07 20:23:39
阅读次数:
308
值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。引用传递:(形式参数类型是引用数据类型参数):也称为传地址。方法调用时,实际参数是对象...
分类:
其他好文 时间:
2016-01-07 11:30:57
阅读次数:
124
调用同事的函数,传入goods_list,获取商品信息,然后将商品信息与goods_list的信息进行匹配,合并。但是同事返回数据的同时改变了我传入的参数,goods_list。相当于传参引用,也就是在内存中相同的地址进行更改数据,将我传入的参数goods_list 进行覆盖。导致我的参数不能匹配。...
分类:
编程语言 时间:
2015-12-17 12:51:36
阅读次数:
173
今天早上我了一道有关java的题。主要考点是考java中值得传递方式。之前我在javaoo里总结的是:基本数据类型中保存的是实际的值,引用数据类型保存的是被引用的内存地址,那么基本数据类型就是按值传递,引用数据类型就是按地址来传递的。(难道我一开始就错了)题是真样的: 1 public class ...
分类:
编程语言 时间:
2015-12-12 10:51:48
阅读次数:
178
关键点:在创建后,基本数据类型数组可以直接对数组元素赋值、引用等操作;而自定义对象数组,需要对数组中的每个对象元素独立进行创建,然后才可以对其赋值、引用等操作,如果没有单独对每个对象元素创建,会导致空指针异常原文:摘要:java是面向对象程序设计语言,对象数组作为javase中的基础部分的一个重要环...
分类:
编程语言 时间:
2015-12-10 21:23:48
阅读次数:
151
1.Define 和 const区别无数据类型 有数据类型字符替换无安全检查 有安全检查Define 的生命周期止于编译器2.堆和栈区别程序员MALLOC NEW手动分配的定义的变量3.指针和引用区别可修改:指针可以被重新赋值 引用必须初始化不能修改合法性:测试防止为空 不需要测试合法性4.strl...
分类:
编程语言 时间:
2015-12-07 22:25:40
阅读次数:
250
函数模板std::declval (c++11 only)template typename add_rvalue_reference::type declval() noexcept;功能描述:返回一个类型的右值引用,不管是否有没有默认构造函数或该类型不可以创建对象。(可以用于抽象基类);参数:....
分类:
编程语言 时间:
2015-12-06 13:07:43
阅读次数:
907