struct中的静态对象

时间:2014-11-13 09:57:40

标签: c++ object struct static

我使用方法A上课display()。我创建了一个结构B,其中包含一个类型为对象A的静态变量:

class A{
public :
    void display()
    {
        cout << "in A " << endl;
    }
};
typedef struct B{
    static A a;
} bb;

//B::a.display();
int main() {
    bb b;
    bb::a.display();
    return 0;
}

现在尝试访问a时出错。

在这种情况下如何定义静态对象?

1 个答案:

答案 0 :(得分:4)

您声明了static A a;但没有定义它。在int main()之前添加以下行,并且它已成功链接:

A B::a;