##質問
静的メンバ関数の戻り値に静的メンバ変数を設定するとエラーがおきます。
静的メンバ変数を戻り値に設定しているコードが見つからなかったので困っています。
また、静的と非静的の違いは
・メインコードに書くときにクラス名をつける必要がある
・静的関数から非静的関数は呼び出せない
以外に何かあるのでしょうか
class Counter{ private: int m_count; static int m_totalCount; public: static int getTotalCount(); }; ----------------------------------------------------- Counter::Counter() : m_count(0) { m_totalcount = 0; } void Counter::count(){ m_count++; m_totalCount++; } int Counter::getTotalCount(){ return m_totalCount; } ----------------------------------------------------- int main(){ Counter c1, c2; c1.count(); c2.count(); cout << "トータルのカウント数:" << Counter::getTotalCount() << endl; return 0; }
error
1undefined reference to `Counter::m_totalCount' 2collect2.exe: error: ld returned 1 exit status
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。