问个c++的初级问题。。

来源:百度知道 编辑:UC知道 时间:2024/04/20 08:11:40
1。传值调用时,形参和实参有何区别?
2。传址调用时,形参和实参有何区别?
3。两种不同调用的特点是什么?

到现在学了半天还是没弄懂。。。。

形参就是一个摆设。。。。告诉你参数的类型是什么样的。。。你的函数声明中可以直接这样写:
fun(int,int);
在调用的时候这样写:
fun(1,2);
无论以哪种方式调用,形参就是一个类型限定,实参才是真正要传递的东西

以值传递的时候传递的是数据本身,以址传递的时候传递的数据所在的地址。。。
以值传递的时候会花一些时间来复制这个数据,在C++中涉及到类的时候这个问题就显得有些突出了。。
因为类的数据一般比较大,复制的时候得调用它的复制构造函数,然后得调用它的析构函数。。。这些都是需要时间和空间的。。。

按值返回和按引用返回也是类似的。。。

其实函数都是值传递,