假期刷题--树

此博客链接:

2021.01.14

1.

 

 

如果没有重载操作运算符=号为私有方法,BD都是正确答案。重载之后B选项编译都通不过。
C和A不行的道理本质上是一样的,都是复制了一份值再传给函数形参,相当于在函数内部创建了一个新的变量。只不过C传过去的是个地址,函数可以通过地址指向去访问该地址中存放的内容,包括修改地址指向的内容。C选项之所以达不到交换的效果,是因为他们交换的是原对象的地址拷贝,也就是形参交换。D之所以达到交换效果,是因为传过来的是地址变量的别名,也就相当于是原对象的别名,即指针变量的别名。这和B是一样的道理,B是变量别名,二者都能达到修改效果,只不过B的=被重载为私有方法了,无法通过编译。
因此答案选D.(没有看懂呢)

 

posted @ 2021-01-13 14:50  萍2樱释  阅读(48)  评论(0编辑  收藏  举报