xml*_*lmx 0 c++ compiler-construction visual-studio visual-c++ c++11
我的编译器是VC++ 2013和2013 Novmember CTP.
以下代码使VC++编译器崩溃并报告:
"致命错误C1001:编译器中发生内部错误."
template<class T>
class A
{
operator T*() const
{
return p;
}
T* p;
};
template<class T>
class B : public A<T>
{
using A::operator T*;
};
int main()
{}
Run Code Online (Sandbox Code Playgroud)
VC++编译器中可能存在一个错误,但您的代码仍然不正确:g ++ reports error: 'template<class T> class A' used without template parameters(link).(在不同的编译器上测试代码通常是一个好主意.)
改变第15行
using A::operator T*;
Run Code Online (Sandbox Code Playgroud)
至
using A<T>::operator T*;
Run Code Online (Sandbox Code Playgroud)
(A即将" A<T>" 改为" ").
| 归档时间: |
|
| 查看次数: |
87 次 |
| 最近记录: |