Самый простой способ сделать это - использовать [bitset] [1]:
#include <iostream>
#include <string>
#include <bitset>
using namespace std;
int main(){
string binary_str("11001111");
bitset<8> set(binary_str);
cout << hex << set.to_ulong() << endl;
}
Но я читал, что это не самый эффективный способ ... Зависит от того, что вы хотите.Помните, что преждевременная оптимизация - корень всего зла .