C++ 模板类的静态成员变量链接问题

template <typename T>
class A
{
public:
    static int const i = 0;
};


这样写,运行时会找不到 i  对应的符号,需要改成下面的写法

template <typename T>
class A
{
public:
    static int const i;
};

template <typename T>
int A::i = 0;


原因不明。上面只是简单的例子,不能重现,可能是更复杂的使用方式引起的,有空的时候再研究。

你可能感兴趣的:(C++)