2012-02-15 5 views
1

비트 스트링에 대해 감소 연산자가 필요합니다. 현재 다음과 같이 정의 된 incremement 연산자가 있습니다.비트 스트링을 감소시키는 방법?

void increment(boost::dynamic_bitset<> &bitset) 
{ 
    for (int loop = 0; loop < bitset.size(); ++loop) 
    { 
     if ((bitset[loop] ^= 0x1) == 0x1) 
     { 
      break; 
     } 
    } 
} 

비트 스트링에서 어떻게 감소합니까?

답변

2

이렇게하면 효과가있는 것 같습니다.

void decrement(boost::dynamic_bitset<> &bitset) 
{  
    for (int loop = 0; loop < bitset.size(); ++loop) 
    { 
     if ((bitset[loop] ^= 0x1) == 0x0) 
     { 
      break; 
     } 
    } 
} 
+0

그건 내 직관이었고, 단지 확인하기를 바랬습니다. 감사! – Jim

관련 문제