Visual Studio C++ 2005/2010 with boost 1.50: warning C4267
Visual Studio C++ 2005/2010 with boost 1.50: warning C4267
我无法阻止此警告。
...boostasioimplio_service.ipp(46) : warning C4267: 'argument' : conversion from 'size_t' to 'std::numeric_limits<unsigned int>::_Ty', possible loss of data
也许你得到了
- 对此的解释
- 防止投掷的解决方案:-)
请
亚历克斯
对此的解释
怀疑这是一个 64 位版本,size_t
将是 64 位的,unsigned int
将是 32 位的:
std::cout << sizeof(unsigned int) << "n"; // Output '4' on both x86 and x64
std::cout << sizeof(size_t) << "n"; // Output '4' on x86
// Output '8' on x64
防止投掷的解决方案
添加编译器标志/Wd4267
以禁用此警告。但是,这将禁用项目中您可能不喜欢的所有源的警告。另一种方法是使用 #pragma warning
:
#pragma warning(disable: 4267)
#include <boost-header-files>
#pragma warning(default: 4267)
相关文章:
- "Warning: Comma within array index expression"但逗号分隔函数参数
- 在 Cocos2dx 中初始化粒子效果后的警告 - "libpng warning: iCCP: known incorrect sRGB profile"
- Visual Studio C6385 warning c++
- "Warning : No return statement in function returning non-void"是什么意思?
- cuda-gdb 给出错误"warning: Cuda API error detected: cudaLaunchKernel returned (0x7)"
- 编译代码时"[Warning] extra tokens at end of"
- 警告 C4267"参数":从"size_t"转换为"DWORD&quo
- QT_HAS_BUILTIN warning
- 警告 C4267"正在初始化":从'size_t'转换为"DWORD",可能会丢失数据
- warning C4503 with CGAL 4.12-beta 2
- 如何修复'PCH Warning: header stop not at file scope'
- 构造函数中的 C4267 转换警告 - 无法修复过载?
- 如何在 C++ 中修复"/usr/bin/ld: warning: liblber-2.4.so.2, needed by //usr/lib/x86_64-linux-gnu/libcurl-gnu
- BufferOverrun :codesonar warning
- Warning 6011 in C++
- 如何修复空虚拟方法的"warning: no return statement in function returning non-void [-Wreturn-type]"
- 为什么"Warning X4000: use of potentially uninitialized variable"显示多个常用方法的用法?
- 叮叮当当 警告:"warning: unknown warning option '-Wno-maybe-uninitialized'"
- Visual Studio C++ 2005/2010 with boost 1.50: warning C4267
- 摆脱"warning C4267 possible loss of data"的最佳策略是什么?