Операторы == и! = Генерируются компилятором?

Нужно ли предоставлять операторы == и / или! =? Я прочитал здесь: Почему компиляторы C ++ не определяют operator == и operator! =? что я делаю, но когда я на самом деле попробовал (не предоставил и не попытался их использовать), программа скомпилировалась нормально. Так, что происходит?

Использование VS2010, если это имеет значение.

0

Решение

Эти операторы определены для фундаментальных, определенных языком типов, а не для ваших пользовательских. Так что это будет работать для intс, например. Но не для class foo; если вы не предоставите их явно — компилятор не знает как сравнить свои собственные определенные типы, если вы еще не сказали, как это сделать.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]