5

C++ のプライベート仮想関数に共通の命名規則はありますか? do_something(...)、などの規則を見てきましたsomething_vfunc(...)。通常、C++ プロジェクトで使用される規則はどれですか?

4

4 に答える 4

2

標準で使用されている規則 (多くの の間などstd::numpunct) は、それdo_somethingprotected virtualメソッドであり、somethingそれを呼び出すpublic非メソッドであるというものです。virtual

于 2012-08-09T20:20:57.727 に答える
1

確かに多くの慣習があります。メソッド名の残りの部分の慣例に応じて、末尾にImplorを使用する傾向があります。_implしたがって、必要に応じてComputeFoo呼び出しComputeFooImplます。

于 2012-08-09T20:27:06.777 に答える
1

チームや人々が異なれば、使用する基準も異なります。個人的には、特別な接頭辞や接尾辞を追加しないことです。名前は、この関数が何をするかを表す必要があります。IDE は、それがプライベートか保護されているか、仮想かどうかを確認するのに役立ちます。はい、仮想機能を非公開または保護するのは良い趣向ですが、この原則に従うためだけに新しい機能を追加する場合は、よく考えてください。

于 2012-08-09T21:39:06.970 に答える
1

私は接頭辞を使用しますdyn_。あなたが見るかもしれません:

class t_type {
public:
    /* ... */
    void method() {
        this->dyn_method();
    }

private:
    virtual void dyn_method() const = 0;
};

class t_subtype : public t_type {
public:
    /* ... */
private:
    virtual void dyn_method() const {
        ...
    }
};

一般的なものに関しては、よくわかりません。

于 2012-08-09T20:23:43.670 に答える