如何使用dynamic_bitset<>复制位

How to make a copy of bits with dynamic_bitset<>

本文关键字:gt 复制 何使用 lt bitset dynamic      更新时间:2023-10-16

>我有这个功能:

void SetCode(dynamic_bitset<> * c) {  
    this->_code = c;  
    this->_size = c->size();  
}

它说:this->_code = c,我想复制c并将其放入this->_code

我该怎么做?

鉴于this->_codec dynamic_bitset<>相同。你可以只使用赋值运算符(这需要已经初始化_code,即 new版):

*_code = *c;

您可能应该从this->_code类型中删除指针,并在参数中使用引用:

class A {
public:
  void foo (boost::dynamic_bitset<T, U>& c)
  {
    _code = c;
  }
private:
  boost::dynamic_bitset<T, U> _code;
};

您没有为dynamic_bitset提供任何模板参数,所以我只选择了两个假参数。