大佬教程收集整理的这篇文章主要介绍了c – boost :: dynamic_bitset concat性能,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
boost::dynamic_bitset<> encode(const std::vector<char>& data) { boost::dynamic_bitset<> result; std::for_each(data.begin(),data.end(),[&](unsigned char symbol) { for(size_t n = 0; n < codes_[symbol].size(); ++n) result.push_BACk(codes_[symbol][n]); // codes_[symbol][n].size() avarage ~5 bits }); return result; }
我已经阅读了这个post,它提出了一个解决方案,遗憾的是,由于目标位集和源位集的大小之间的大小差异非常大,因此对我不起作用.
有任何想法吗?
如果使用boost :: dynamic_bitset无法有效地执行此操作,那么我会对其他建议持开放态度.
另外,你将dynamic_bitset保留为unsigned long,但据我所知,你实际上只是将unsigned char插入其中.改变这一点可以让你的生活更轻松.
我也很好奇什么类型的@L_674_2@_是 – 如果它是一个地图你可以用一个向量替换它,或者因为它是最大静态大小(256个条目是无符号字符的最大值),一个静态数组.
以上是大佬教程为你收集整理的c – boost :: dynamic_bitset concat性能全部内容,希望文章能够帮你解决c – boost :: dynamic_bitset concat性能所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。