iam*_*ind 5 c++ compiler-errors g++ llvm-clang clang++
两者几乎都是Ubuntu 14.04中最新版本的g ++和clang ++.下面的代码用g ++编译好.
template<typename T>
struct B { static const int i = T::value; };
struct D : B<D> { static const int value = 0; } d;
int main () {}
Run Code Online (Sandbox Code Playgroud)
但是,使用clang ++(即使使用-std = c ++ 11),会抛出以下错误:
error: no member named 'value' in 'D'
struct B { static const int i = T::value; };
~~~^
note: in instantiation of template class 'B<D>' requested here
struct D : B<D> { static const int value = 0; } d;
Run Code Online (Sandbox Code Playgroud)
它是非标准代码吗?
上面的示例只是一个更大的代码片段,必须移植到iOS/Android.iOS支持clang,我不确定,它将如何解决.
任何帮助表示赞赏.
| 归档时间: |
|
| 查看次数: |
34 次 |
| 最近记录: |