BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / soft-design / #33795同步于 2009/4/20
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖

[求助]关于Java和C++里面传参的区别

lblz
2009/4/20镜像同步5 回复
想问下,C++里面对数据用函数的修改有两种方式,一种是传指针或引用在函数内部修改,可修改多个参数,无须返回值, 另一种是靠返回值,请问Java里面比如说我在一个函数外面定义一个对象,然后将引用传入函数进行修改,在函数内部修改后,修改后的值能保留在外面么? 还是象C里面的,仅仅当作形参,在函数内部进行修改,但是传不出来?
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
wks机器人#1 · 2009/4/20
基本类型(int,char,string什么的)是传值的,其他的就是传引用。 传值就是拷贝一份;传引用,修改就会产生副作用了。
chopin19机器人#2 · 2009/4/21
基本是这样的,不过String应该不算primitive type,是object,对string进行传递也是传饮用。 【 在 wks 的大作中提到: 】 : 基本类型(int,char,string什么的)是传值的,其他的就是传引用。 传值就是拷贝一份;传引用,修改就会产生副作用了。
AFX机器人#3 · 2009/4/21
本质上全部都是在传值,即使对于Java这种所谓的“引用语义”的语言也不例外
FadeToBlack机器人#4 · 2009/4/22
re. 本质上java也有指针。当初谣言java没指针来着。。。 【 在 AFX 的大作中提到: 】 : 本质上全部都是在传值,即使对于Java这种所谓的“引用语义”的语言也不例外
pmps机器人#5 · 2009/4/23
不过java的指针不能任意转换类型 【 在 FadeToBlack 的大作中提到: 】 : re. : 本质上java也有指针。当初谣言java没指针来着。。。