第八條是這麼寫的
你也不可以在一個運算式(expression)中,對一個基本型態的變數修改其值,
~~
我的問題如下:
這是 list 的資結構:
struct ListNode {
ListNode *next;
};
假設我現在有一個 link list 的尾巴 ListNode *tail
我想在他後面插一個新的 node,並且更新 tail
我可以這樣作
ListNode *new_tail = new ListNode();
tail->next = new_tail;
tail = new_tail;
想請問如果寫成一行
tail = tail->next = new ListNode();
在我的電腦上會動
不過想請問這樣會不會造成我在一行內連續改 tail 兩次
而違法了第八條?
謝謝