【问题标题】:Boost.Serialization WarningBoost.序列化警告
【发布时间】:2013-03-01 18:24:33
【问题描述】:

不确定是什么导致了以下警告,据我所知,可以安全地忽略 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)'

知道这是怎么回事吗?

【问题讨论】:

    标签: c++ compiler-warnings boost-serialization


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2018-08-30
      • 2021-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-27
      • 2013-05-20
      • 2018-05-23
      • 2011-05-16
      相关资源
      最近更新 更多