请告诉我,为什么 gcc 链接器给我以下错误:“test_class::test_struct::constVar”,引用自test_class.o 中的__ZN12lu_test_class27test_struct6constVar $ non_lazy_ptr?

我的代码( test_class.h ):

class test_class
{
    struct test_struct
    {
         static const int constVar = 0;
    };
};

所有对 constVar 的引用都在 test_class 范围内,并且具有通常的静态成员访问形式: test_struct::constVar

最佳答案

在类外提供静态成员的定义

const int test_class::test_struct::constVar;

This为我工作。

10-07 15:27