The Principle Engineer私の最後の会社では、private
static
のメソッドは、クラスメソッドではなく、実装ファイルの関数として実装する必要があります。私的静的メソッドの必要性はありますか?
彼のルールに例外があるかどうかはわかりません。私は現在の仕事でその動機に遭遇しました:問題の関数の引数または戻り値の型が、ヘッダに定義ファイルを含める必要があるオブジェクトである場合、これは不必要な問題を引き起こす可能性があります。
離れて二度とprivate
static
方法を使用してから私を操縦するのに十分なのですが、私はそれらをオフに書いた前に、私は、誰もが、彼らが実装ファイル機能がないことを埋めるニッチを認識しているかどうかを知りたいと?
EDIT:
例はここに役立つかもしれません。
class Foo {
static void foo();
だからfoo
がFoo
の他の方法によってのみアクセス可能である:これは、実装ファイルでvoid foo()
を呼び出す他の方法を持っているclass Foo
の宣言の開始であると言います。なぜ私は実装ファイルにfoo
を定義して、それをヘッダからまとめて保存しないのですか?
@Downvoterダウン投票の理由はありますか?明らかに[tag:C++]に関する必須の投票を提供しているだけの場合、返信する必要はありません。 –
'private static'データ(例えば、作成されたインスタンスの数)にアクセスするには、空き関数ではなくクラスメソッドが必要です。 –
メソッドが 'public'または' protected'の場合、どう違うのでしょうか?あなたの質問に引用されているルールは、なぜ「プライベート」が特別な扱いを受けるのかを説明していません。 –