根据cppreference,std::type_info::operator!=被C ++ 20删除,但是std::type_info::operator==显然仍然存在。
std::type_info::operator!=
std::type_info::operator==
背后的原因是什么?我可能会同意比较不平等是没有意义的,但是然后比较相等也同样是没有意义的,不是吗?
相比之下,必须编写if(!(id1 == id2))并不会使任何代码更清晰if(id1 != id2),相反,相反……
if(!(id1 == id2))
if(id1 != id2)
c++ c++20
c++ ×1
c++20 ×1