Left and right shift operators (<< and >>) are already available in C++.
However, I couldn\'t find out how I could perform circular shift or rotate operations.
How abt something like this, using the standard bitset ...
#include
#include
template
inline void
rotate(std::bitset& b, unsigned m)
{
b = b << m | b >> (N-m);
}
int main()
{
std::bitset<8> b(15);
std::cout << b << '\n';
rotate(b, 2);
std::cout << b << '\n';
return 0;
}