Exceptional C++ Style之27

原创 2006年05月18日 19:52:00
第27条 数据格式和效率之二:(甚至更少的)位操纵
       class CBitBuffer 
{
public:
       CBitBuffer(){};
       virtual ~CBitBuffer(){};
       size_t Size() const{
              return buf_.size();
       }
 
       void Append(unsigned char* p ,size_t num)
       {
              int bits = numeric_limits<unsigned char>::digits;
              for(int i= 0; i<num;++i)
              {
                     buf_.push_back((*p)&(1<<(bits-1-i%bits)));
                     if ((i+1)%bits == 0)
                            ++p;
              }
       }
       void Get(size_t start,size_t num,unsigned char *dst)const
       {
              int bits = numeric_limits<unsigned char>::digits;
              *dst = 0;
              for(int i= 0;i<num;++ i)
              {
                     *dst |= unsigned char(buf_[start + i]<<(bits -1 -i%bits));
                     if ((i+1)%bits == 0)

                     * ++ dst = 0;

              }
       }
private:
       vector<bool> buf_;
};
       Herb Sutter的位容器,看上去很不错,我也很喜欢。附上代码,以后用的机会可能也不会很多吧。

C语言无名管道实现父子进程间通信

*/ #include #include #include #include #include #include #define SIZE 128 //缓存区大小 char bu...
  • u011430511
  • u011430511
  • 2013年08月03日 19:57
  • 1677

WPF中Style文件的引用——使用xaml代码或者C#代码动态加载

WPF中控件拥有很多依赖属性(Dependency Property),我们可以通过编写自定义Style文件来控制控件的外观和行为,如同CSS代码一般。   总结一下WPF中Style样式的引用方法...
  • honantic
  • honantic
  • 2015年09月28日 11:45
  • 26616

WPF style 样式的使用

一、在标签里内联样式  Button x:Name="btn_danru" Click="btn_danru_Click" Width="200" >             Button.Sty...
  • yb305
  • yb305
  • 2015年01月28日 17:05
  • 2083

Exceptional C++ Style 目录

泛型编程与 C++ 标准库 1 第1条 vector 的使用 2 第2条 字符串格式化的“动物庄园”之一:sprintf 9 第3条 字符串格式化的“动物庄园”之二:标准的(或极度优雅的)替代方...
  • sunrise918
  • sunrise918
  • 2011年11月11日 11:58
  • 316

Exceptional C++ Style中文版

  • 2017年10月27日 20:34
  • 12.81MB
  • 下载

Exceptional C++ Style中文版

  • 2014年10月08日 22:52
  • 13.28MB
  • 下载

Exceptional C++ Style(chm和pdf)

  • 2013年08月30日 14:37
  • 2.64MB
  • 下载

Exceptional C++ Style 中文版(免费)

  • 2008年10月21日 17:16
  • 12.28MB
  • 下载

Exceptional C++ Style

  • 2014年12月06日 21:38
  • 3.02MB
  • 下载

Exceptional.C++.Style.40.Puzzles

  • 2010年11月09日 14:15
  • 1.45MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Exceptional C++ Style之27
举报原因:
原因补充:

(最多只允许输入30个字)