清除 boost::array
Posted
技术标签:
【中文标题】清除 boost::array【英文标题】:Clearing boost::array 【发布时间】:2011-01-07 14:24:58 【问题描述】:我正在使用 boost 数组作为我从 boost::asio 的 async_read 获得的内容的缓冲区。
阅读后,我想清除/重置缓冲区以供下次阅读。请告诉我该怎么做。
【问题讨论】:
你想要 std::vector 的 clear() 功能吗?如果不是,您希望数组 clear() 做什么? 【参考方案1】:您不需要清理每个读数,只需使用读取的字节数
buffer(array, bytes_readed)
如果你还想要,你可以使用assign方法
array.assign(0);
【讨论】:
嗯,当前的 g++ 编译器似乎不支持assign
方法:(
your_array.assign( the_default_value_of_array_elem );是您可以使用您选择的默认值填充数组的唯一方法。 assign() 这样做: std::fill_n(begin(), N, value) quoting from boost.org/doc/libs/1_45_0/doc/html/boost/array.html#id426226-bb以上是关于清除 boost::array的主要内容,如果未能解决你的问题,请参考以下文章