- 2
- 0
- 约1.1千字
- 约 6页
- 2022-08-13 发布于云南
- 举报
数 据 结 构向函数传递对象 向函数传递对象 对象可以作为参数传递给函数,其方法与传递其它类型的数据相同。在向函数传递对象时,是通过传值调用传递给函数的。这就是说把对象的拷贝而不是对象本身传给函数。因此函数中对对象的任何修改均不影响调用该函数的对象本身。下例说明了这一点。例2-10#includeiostream.hclass tr{int i;public:tr(int n){ i=n; }void set_i(int n){ i=n; }int get_i(){ return i;}};void sqr_it(tr ob){ob.set_i(ob.get_i()*ob.get_i());coutcopy of obj has i value of ob.get_i();cout\n;}int main(){tr obj(10);sqr_it(obj);coutBut,obj.i is unchanged in main:;coutobj.get_i();return 0;}运行结果为:copy of obj has i value of 100But,obj.i is unchanged in main:10如同其它类型的变量一样,也可以将对象的地址传递给函数。这时函数对对象的修改将影响调用该函数的对象本身。下面我们对前个例子稍作修改,来说明这个问题。例2-11#include
原创力文档

文档评论(0)