为什么++重载但不是 - 对于c ++ bool

y2k*_*y2k 6 c c++ boolean operator-overloading

我试图找出为什么我可以++b一个bool而不是--b

#include <stdio.h>

int main(void)
{
    bool b = false;
    ++b;
    --b; // error C2428: '--' : not allowed on operand of type 'bool'

    printf("%s %d", b ? "true" : "false", b);

    getchar();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)