0

私は次のクラス構造を持っています:

class A {
  template<typename T> static void f(const T& input) {
     //do something with X and input
  }
  static ostringstream x;
}

次に、主に次のことを行います。

...
int n = 5;
A::f(n);
...

これは正常にコンパイルされますが、A::x が見つからないシンボルであるというリンケージ エラーが発生します。誰かがこのエラーに遭遇しましたか?

ありがとう!

4

2 に答える 2

2

はい、まだ定義していませんx

// A.cpp
std::ostringstream A::x;
于 2012-08-30T15:36:58.390 に答える
0

A::f<int>(n); 代わりに使用してください。

于 2012-08-30T15:25:14.030 に答える