Согласно cppreference, std::type_info::operator!=
удаляется с C ++ 20, однако, std::type_info::operator==
видимо остается.
В чем причина? Я мог бы согласиться с тем, что сравнение на предмет неравенства бессмысленно, но тогда сравнение на равенство также было бы бессмысленным, не так ли?
Аналогичным образом operator!=
из многих других типов стандартных библиотек, включая контейнеры, такие как std::unordered_map::operator!=
и std::unordered_set::operator!=
будут удалены в C ++ 20 согласно cppreference.
Необходимость писать if(!(id1 == id2))
не делает никакой код более ясным по сравнению с if(id1 != id2)
, напротив, как раз наоборот ...