之前有人遇到此错误吗?我不知道究竟是什么造成了这种情况:
1>...include\sstream(640): error : "std::basic_ios<_Elem, _Traits>::basic_ios(const std::basic_ios<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]"
1>...include\istream(922): error : "std::basic_ios<_Elem, _Traits>::basic_ios(const std::basic_ios<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]"
1>...include\istream(18): error : "std::basic_ios<_Elem, _Traits>::basic_ios(const std::basic_ios<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]"
1>...include\ostream(37): error : "std::basic_ios<_Elem, _Traits>::basic_ios(const std::basic_ios<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]"
它没有在我的源代码中给出任何可能导致此问题的任何指示,而且我不知道此错误指向的是什么(它只是说error
)。我的意思是,我在我的源代码中使用了流,字符串,所以任何人都可以暗示可能导致这种情况的原因吗?
使用NVCC编译的MSVC 2010
答案 0 :(得分:1)
隔离bug后,我设法解决了这个问题:如果有人遇到此错误,则错误是NVCC抱怨您隐式复制std::stringstream
对象的方式,这是不允许的
就我而言,我有一个异常类myError
,内部包含一个std::stringstream
对象,并且调用throw myError(...)
隐式导致非法复制。
this separate answer解释了完整的分辨率。