是否有可能超載基本類型像char
或int
有額外的運營商?重載基本數據類型
我試了一下:
bool char::operator[](const int param) {
if (param < 8) {
return (*this) & std::pow(2, param);
}
else {
exit(13);
}
}
我想發生: 我希望函數在字符變量的param
位置返回該位的值。
發生了什麼: 它不能編譯。錯誤:'bool' followed by 'char' is illegal.
問題。最後回答。是否需要詳細說明。 –
'^'是按位異或運算符。我相信你正在尋找逐字分解(「和」),寫成'&'。 'pow'返回一個浮點值;如果你想計算2到一個小整數的冪,使用左移運算符:1U << param'(或者'1UL << param',如果你期望'param'大於' int'。甚至'1ULL << param' ...) – rici