2012年4月27日 星期五

全域變數之我見

最近找了一題acm的題目打發時間(高手一天三題,我三天一題)
其中為了省下打字麻煩,把一個會 「重複使用」 , 「傳入遞迴」
的變數設定為全域變數,因此付出了80%的時間debug..........

很多初步接觸程式設計的人常常會為省麻煩,而把常用變數設為
全域,但這會造成管理上的問題。

個人心得:

1.  每個function都能存取與修改該變數,很容易在不知情的情形下
     誤改值,很難確認對其修改的權限歸屬

2.  盡可能改以區域變數,一來是方便追蹤範圍與可能出錯的區塊
     二來只要生命週期結束,便不會造成多餘的影響

3. 常數盡量以#define 處理

小地方多關心,bug遠離你....

沒有留言:

張貼留言