我已将VC++项目形式从VS2008迁移到VS2013,并收到一些警告,例如:
如何解决这些类型的警告?
最佳答案
在MSVC 2013中,std::streamsize
是:
typedef _Longlong streamsize;
typedef _LONGLONG _Longlong;
#define _LONGLONG __int64
size_t
是:typedef unsigned __int64 size_t;
因此,一个简单的再现案例是:
unsigned __int64 b = 1;
__int64 a = b;
但是,这不会发出警告-因此,您可能在某处将
size_t
重新定义为32位吗?为了清楚起见:
std::streamsize b = 1;
size_t a = 0;
b = a;
也不会发出警告。