0

不确定是什么导致了以下警告,正如我所读,可以安全地忽略 32 位:

conversion from 'std::streamsize' to 'size_t', possible loss of data

我正在执行例行的 Boost 序列化,程序运行良好。唯一的问题是编译器在以下代码中存在问题:

while compiling class template member function 'void boost::archive::basic_binary_iprimitive<Archive,Elem,Tr>::load_binary(void *,size_t)'

知道这是怎么回事吗?

4

1 回答 1

1

std::streamsize是有符号整数类型。size_t是无符号整数类型。

这是不安全的转换,因为它可能会导致数据丢失。编译器检测到不安全的转换并发出警告。

于 2013-03-01T22:20:13.753 回答