2012-07-02 33 views
6

在C++中,當使用資源獲取是初始化(RAII)模式時,是否有任何用於命名類的公約?什麼是RAII類的常用命名約定?

在我的情況,我有做了以下幾種東西類,我想看到這些堆棧上的一個時可能會調用一個有用的含義第一次閱讀器名稱:

  • 禁止日誌記錄的類(可以嵌套)。
  • 一個類放置一個觀察者。
  • 一個類,用於記錄當前線程正在處理的當前對象。
  • 除了基類行爲之外還處理對象的派生類(在上一行)。

作爲第一個切,我用這樣的名稱(在相應的命令上面),而是希望改善他們身上

  • 類SuppressLogger
  • 類ScopedObserver
  • 類WithCurrentObject
  • 類WithObjectProcessed:public WithCurrentObject
+0

我沒有看到這些名字有什麼問題。我可能在最後兩個(例如'LogWithCurrentObject')前面加上'Log',但根據代碼,可能不需要。 –

回答

9

RAII應該在整個語言中使用。既然它應該是默認的,那麼就沒有命名約定。

+7

是的,但是實現RAII的*類*和類*的RAII類(在沒有構造函數和析構函數之外的任何方法的情況下)之間存在差異。我認爲威廉正在問後者。 – dan04

+0

@ dan04你是對的。 – WilliamKF

相關問題