【发布时间】:2018-07-30 16:22:53
【问题描述】:
以下代码可以使用 MSVC 14.1 编译,但不能使用 Clang 5.0.1。
template <typename T>
class C
{
public:
static int a[];
};
int C<int>::a[1] = { 1 };
Clang 的错误信息是:
错误:模板特化需要'模板'
此代码是否符合 C++ 标准? 我在here找到了相关的段落如下。
定义显式特化类模板的成员时 在类的主体之外,不使用语法模板
【问题讨论】:
-
我比较关心
static int a[];。 -
您能描述一下您的担忧吗?