当您尝试切换指针时,“=”的含义是什么。
例如:current->next = previous
和current = previous
。
答案 0 :(得分:5)
让我们进行第二项任务current = previous
。这里,小方框是指针本身的值,而右边的矩形是指向的东西。
转让前:
+---+ +-----------+
current | --|--------> | Obj1 |
+---+ +-----------+
+---+ +-----------+
previous | --|--------> | Obj2 |
+---+ +-----------+
分配后,current
和previous
都指向对象Obj2。
+---+ +-----------+
current | --|--+ | Obj1 |
+---+ | +-----------+
|
+---+ +-----> +-----------+
previous | --|--------> | Obj2 |
+---+ +-----------+
重要的要点:
current
过去指向的原始Obj1不变。它不会因作业而被“删除”或破坏。Obj1
。Obj2
),则当您通过 *current = func()
或{{1}访问(读取)时,将反映其更改状态}}。