我不明白这个C ++错误 - 错误C2101:'&'不断

时间:2011-09-17 23:40:32

标签: c++ templates visual-c++ compiler-errors

这段代码应该适用于GCC - 我试图让它与Visual Studio一起工作。我无法弄清楚代码是否真的有问题,或者我没有用端口做正确的事情。

1>c:\somepath\aaa.h(52): error C2101: '&' on constant
1>          c:\somepath\aaa.h(52): while compiling class template member function 'const blahblah::Message something::AClass<Type>::aMethod(void) const'
1>          with
1>          [
1>              Type=const lala::BClass&
1>          ]
1>          c:\somepath\bbb.h(79) : see reference to class template instantiation 'something:AClass<Type>' being compiled
1>          with
1>          [
1>              Type=const lala::BClass&
1>          ]
1>  MyApplication.cpp

档案

aaa.h:52          virtual const Type aMethod() const { return Type(); }

bbb.h:79          AClass<const BClass&> blahblahblah_;

1 个答案:

答案 0 :(得分:8)

构造T(),其中T是引用类型无效,没有任何意义。某些版本的gcc错误地接受了它。