定义布尔逻辑运算符(v,^,XOR, - >,< - >)

时间:2017-10-10 15:59:38

标签: c++11

假设我们有bool true = (P v Q) -> R

如何定义运算符(或函数),以便符号(v,^,XOR, - >,< - >)将调用将执行逻辑的函数?

因此,在示例中:bool true = P v Q,会调用bool or(bool a, bool b)

1 个答案:

答案 0 :(得分:0)

无法在C ++中定义任意中缀运算符,也无法使用名称true作为变量名。

但是,C ++已经提供||&& for和^!= for xor(对于bool s,它们是等价的),而!则没有。如果你想要逻辑蕴涵,你最好使用!P || Q,如果你想要iff,你应该使用P == Q