1

重複の可能性:
クラス内の静的メンバー変数
未定義の参照/未解決の外部シンボル エラーとは何ですか。

class test_struct {
  static int number;
 public:
  static void set() {
    number = 42;
  }
};

int main() {
  test_struct::set();
}

エラーは次のとおりです。

[...]Temp\ccGGxEAz.o:test.cpp:(.text.startup+0xf): undefined reference to `test_struct::number'
collect2.exe: error: ld returned 1 exit status
4

1 に答える 1

5

test_struct::number使用する前に、ソース コード (.cpp) で静的メンバーを定義する必要があります。

class test_struct {
  static int number;
 public:
  static void set() {
    number = 42;
  }
};

int test_struct::number = 0;
于 2013-01-15T22:45:20.997 に答える