在4.14 http://eel.is/c++draft/conv.bool#1
它说:
prvalue 的算术,无范围枚举,指针或指针 成员类型可以转换为bool类型的 prvalue 。
为什么要特别强调prvalue?
算术类型的左值也可以转换为bool。
答案 0 :(得分:1)
标准不希望布尔转换影响左值,因此它不允许它。
您当然可以将算术类型的左值转换为类型bool
,但它不是通过(仅)布尔转换完成的。将算术左值转换为bool
是一个标准转换序列,由左值到右值转换后跟布尔转换组成。