python中的参数传递类似java,有着自己的内存回收机制,这和C++有着很大的差别. 1.函数的参数传递: >>> a = [, , ] >>> def fun(a): for i in a: print i a.append(4) >>> fun(a) >>> a [, , , ] 从上面的结果可以看出,python的函数传递是引用传递,因此,在函数体内修改对象内容会导致函数外面的对象内容改变. 这个对于一些内置类型,如int,…
pass by value or pass by reference? 我们知道,当函数在传递值的时候,会新建一个变量(没有名字)储存这个值 然后传递.降低程序运行的效率. 如果使用引用(reference)传递的速度很快,就可以避免这样的问题. 那么,什么是引用? 如何使用引用? 首先,在c++中,引用可以当做一个指针与指针有相同的作用,可以指向某个data,但是使用前必须指明引用哪个变量. eg: int a; int &b=a; 表示b是a的引用,此时b等价于a,对b进行修改,a也会被修改…