我的问题是如何在C++上使用按位运算符std::string.通过重载或功能无关紧要.
工作XOR/^函数的示例std::string:
std::string XOR(std::string value, std::string key)
{
std::string retval(value);
long unsigned int klen = key.length();
long unsigned int vlen = value.length();
unsigned long int k = 0;
unsigned long int v = 0;
for (; v < vlen; v++) {
retval[v] = value[v] ^ key[k];
k = (++k < klen ? k : 0);
}
return retval;
}
Run Code Online (Sandbox Code Playgroud)
我现在缺少的是NOT/~,AND/&plus OR/的替代品|.示例C++代码(最后两行想要它...... :-P):
//note: matrix_content[][] holds unsigned, *checked* integers... …Run Code Online (Sandbox Code Playgroud)