递归火山软件开发平台

标题: 对象的参考还是原来的对象吗? [打印本页]

作者: hs999xl    时间: 2023-12-27 15:21
标题: 对象的参考还是原来的对象吗?
本帖最后由 hs999xl 于 2023-12-27 15:39 编辑

变量=(变量)对象数组类.取成员(0)//说是取出成员对象的参考。变量.成员变量=123
调试输出(对象数组类.取成员(0))
此时调试输出的结果不是123


怎么回事呢?





作者: aycap    时间: 2023-12-27 15:36
正常,对象被复制了一份新的
作者: hs999xl    时间: 2023-12-27 15:41
aycap 发表于 2023-12-27 15:36
正常,对象被复制了一份新的

原来如此,谢谢
作者: hs999xl    时间: 2023-12-27 15:43
那放进对象数组里的对象就再也取不出来了吗?
作者: tmf19901124    时间: 2023-12-27 15:45
返回参考的方法,不要用=号赋值,用了就触发了赋值构造会重新弄一个新的出来
作者: hs999xl    时间: 2023-12-27 15:47
tmf19901124 发表于 2023-12-27 15:45
返回参考的方法,不要用=号赋值,用了就触发了赋值构造会重新弄一个新的出来 ...

感谢,忽然意识到了什么。
作者: tmf19901124    时间: 2023-12-27 17:15
hs999xl 发表于 2023-12-27 15:47
感谢,忽然意识到了什么。

c++中=号其实也是一个方法 用了就相当于调用了那个方法,所以就有新的出来
作者: hs999xl    时间: 2023-12-27 18:02
告诉大家个小技巧,比如你想操作对象数组中的对象成员,两边加括号就行了,比如:”((自定义类)对象数组变量.取成员(索引)).方法()“这样就能拿到开始放里的那个对象。




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4