回覆列表
  • 1 # 使用者6224575670630

    迄今為止,宏定義主要是用在,(1)精簡程式碼;(2)做一下簡單運算,(3)定義一些簡單直觀的常量的方面了。向上面的(2)和(3)在 C++ 中都有可以替代品,也就是說,宏在這些場合中顯得沒那麼重要了,但是依然作為使用習慣,被繼續沿用著。對於(1),宏可以被多處引用,可以減輕一些程式設計師的 記憶負擔,書寫負擔,提高可維護性。(我們知道,對可維護性損傷很大的一個來源就是,程式碼中相互關聯而又分佈零散混亂的 hard code 。)簡單的例子,比如說 windowsx.h 中的ComboBox_SetCurSel 一類的,可以避免程式設計師每次使用時,查閱相關訊息中 wParam,lParam 的含義。再比如說,你有一個內容固定的規模不大的陣列,需要在專案中很多處進行臨時宣告,則它就適合定義成宏。當然,還有遠比這顯得更巧妙的提高可維護性的例子,這裡就不細說了。--總之,宏並不是那種“十惡不赦”絕對不能碰的東西,相反,它是一個程式設計師的工具,並且要求你理解它的運作方式,以及正確,合理的運用,則它就會成為程式設計師的輔助。因為宏有一些副作用,所以宏被用於出一些題目,以及有的人不提倡使用。

  • 中秋節和大豐收的關聯?
  • 和解協議和諒解書有什麼區別?