我有一个 Tester 类,我决定将它声明为 Foo 类的成员,
class Tester {
public:
bool test(const Data &d);
};
class Foo {
static Tester tester;
};
但是当我从 Foo 的一个实例调用 tester.test(data) 时,程序编译得很好,但在调用后没有响应。当我将 Tester::test 设为静态时,
class Tester {
public:
static bool test(const data &d);
};
然后它工作。为什么是这样?我应该能够声明一个静态类并使用它的非静态成员,例如,如果我有一个静态向量。我正在使用 gcc 4.7 进行编译。