天天看點

C++語言設計規則

#目标

  • C++應該使認真的程式員能夠覺得程式設計式變得更愉快了
  • C++是一種通用的程式設計語言,它應該
    • 是一種更好的C
    • 支援資料抽象
    • 支援面向對象的程式設計

#一般性規則

  • C++的發展必須由實際問題推動
  • 不被牽涉到無益的對完美的追求之中
  • C++必須現在就是有用的
  • 每個特征必須存在一種合理的明顯實作方式
  • 總提供一條轉變的通路
  • C++是一種語言,而不是一個完整的系統
  • 為每種應該支援的風格提供全面支援
  • 不試圖去強迫人做什麼。

#設計支援規則

  • 支援健全的設計概念
  • 為程式的組織提供各種機制
  • 直接說出你的意思
  • 所有特征都必須是能夠負擔的
  • 允許一個有用的特征比防止各種錯誤使用更重要
  • 支援從分别開發的部分除法進行軟體的組合

#語言的技術性規則

  • 不隐式地違反靜态類型系統
  • 為使用者定義類型提供與内部類型同樣好的支援
  • 局部化是好事情
  • 避免順序依賴性
  • 如有疑問,就選擇該特征最容易說清楚的形式
  • 文法是重要的(常以默寫我們不希望的方式起作用)
  • 清除使用預處理程式的必要性

#低級程式設計支援規則

  • 使用傳統的(笨)連接配接器
  • 沒有無故的與C的不相容性
  • 在C++下面不為更低級的語言留下空間(除彙編語言之外)
  • 對不用的東西不需要付出代價(零開銷規則)
  • 遇到有疑問的地方就提供手工控制的手段

版權聲明:本文為CSDN部落客「weixin_33712987」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_33712987/article/details/92049299