2016-03-26 10 views
-4

私はいつもクラスのメンバーを作成しなければならないことにちょっと疲れています。このクラスは、1回のメンバ関数でカウンタとして使用されることになります。
クラス内で変数が宣言されているインスタンスが1つのインスタンスに対してのみ静的で、次のインスタンスが0で始まる変数があるかどうかは疑問でした。
私が基本的に探しているのは、単一の関数内のクラスメンバーのショートカットです。メンバー関数内で静的変数を作成できますか?そのクラスのインスタンス内では静的変数のみが使用できますか?

+0

メンバー変数を作成するのはどうですか?それは関数に固有でクラス全体を乱雑にしたくないからですか? – TinyTheBrontosaurus

+4

「いつも」これをやらなければならない理由を説明し、達成しようとしていることを示す例を提供できますか? – Peter

+0

うんざりして、ちょうどメンバにできることintカウンタ= 0; vrey confortableとなります。そして、それは多分3行のコードにしか使われていないので、メンバの継ぎ目が不要であると宣言します。 – user2741831

答えて

0

答えは非静的メンバー変数ですが、私はあなたの質問を誤解している可能性があります。

class Example 
{ 
private: 
    int mCounter; 
public: 
    Example() :mCounter(0) 
    { 
     // Empty 
    } 

    int increment() 
    { 
     mCounter++; 
     return mCounter; 
    } 
}; 
+0

彼は、それがその関数のローカルであるかのように、それを使用する関数内でのみ参照されるようにメンバ変数のカプセル化を追加したいとします。しかし、彼はおそらく、この回答のように、通常のメンバ変数を使うことになるでしょう。 –

関連する問題