#include <iostream>
#include <bitset>
using namespace std;
int main()
{ bitset<128> bitvec3(0xfff1);
unsigned long ulong =bitvec3.to_ulong();
cout<<"before flip:ulong="<<ulong<<endl;
bitvec3.flip();
ulong=bitvec3.to_ulong();
cout<<"after flip:ulong="<<ulong<<endl;
return 0;
}
发生了溢出的错误,因为size of unsigned long is 4;
参考文献:http://technet.microsoft.com/zh-cn/library/hkdb42ah(v=vs.71).aspx