Hi,
I get an error using vs2015 platform.
and get the same error on vs2012 platform.
How can I solve this problem?
Thank you!
/** \brief Contains common functions to convert numbers to strings
* \ingroup common
*/
namespace Number{
/** \brief Converts a numerical variable to its ASCII string equivalent */
template <typename T>
std::string ToString( T number ){
std::ostringstream ss;
ss << std::setprecision(NUM_TO_STRING_PRECISION);
ss << number;
return ss.str();
}
template <> std::string ToString<char>( char number );
template <> std::string ToString<unsigned char>( unsigned char number );
}
}
1>F:\VS_work\GPURenderingApp\GPURenderingApp\include\common/other.hpp(141): error C2593: “operator <<”不明确
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(497): note: 可能是“std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(std::basic_streambuf<char,std::char_traits<char>> *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(477): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(const void *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(457): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(long double)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(437): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(double)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(417): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(float)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(396): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(unsigned __int64)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(376): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(__int64)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(355): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(unsigned long)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(335): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(long)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(315): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(unsigned int)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(290): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(int)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(270): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(unsigned short)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(236): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(short)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(216): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(bool)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(209): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(std::ios_base &(__cdecl *)(std::ios_base &))”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(202): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(std::basic_ios<char,std::char_traits<char>> &(__cdecl *)(std::basic_ios<char,std::char_traits<char>> &))”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(196): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::basic_ostream<char,std::char_traits<char>>::operator <<(std::basic_ostream<char,std::char_traits<char>> &(__cdecl *)(std::basic_ostream<char,std::char_traits<char>> &))”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(694): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const char *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(741): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,char)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(779): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const char *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(826): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,char)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(952): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const signed char *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(959): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,signed char)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(966): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const unsigned char *)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(973): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,unsigned char)”
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(983): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>,T>(std::basic_ostream<char,std::char_traits<char>> &&,const _Ty &)”
1> with
1> [
1> T=dlp::LCr4500::Settings::ImageFlip::ShortAxis::Mode,
1> _Ty=dlp::LCr4500::Settings::ImageFlip::ShortAxis::Mode
1> ]
1> E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\ostream(1021): note: 或 “std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>>(std::basic_ostream<char,std::char_traits<char>> &,const std::error_code &)”
1> F:\VS_work\to zhaodong\GPURenderingApp\GPURenderingApp\include\common/other.hpp(141): note: 尝试匹配参数列表“(std::ostringstream, dlp::LCr4500::Settings::ImageFlip::ShortAxis::Mode)”时
1> src\dlp_platforms\lightcrafter_4500\lcr4500_settings.cpp(383): note: 参见对正在编译的函数 模板 实例化“std::string dlp::Number::ToString<dlp::LCr4500::Settings::ImageFlip::ShortAxis::Mode>(T)”的引用
1> with
1> [
1> T=dlp::LCr4500::Settings::ImageFlip::ShortAxis::Mode
1> ]
1>F:\VS_work\to zhaodong\GPURenderingApp\GPURenderingApp\include\common/other.hpp(141): error C2088: “<<”: 对于 class 非法