@Airat1995
Студент

Число 0, как символ?

Здравствуйте, только что столкнулся с интересной (как мне показалось) фичей. Не уверен точно почему, однако при вызове перегруженных функций со значением 0, вылезает ошибка
call to member function 'SetAttrib' is ambiguous
, и следовательно необходимо кастовать данное значение в интовое. Неужели это происходит из-за старого понимания компилятором, что 0 == nullptr? Или я чего-то не понимаю?

П.С.:Просто я пишу с использованием C++11 и странно, что 0 и nullptr это одинаковые вещи для компилятора.
  • Вопрос задан
  • 195 просмотров
Решения вопроса 1
romy4
@romy4
Exception handler
>странно, что 0 и nullptr это одинаковые вещи для компилятора.
а они должны быть одинаковыми по определению.

>call to member function 'SetAttrib' is ambiguous
означает, что у вас есть функция принимающая как int, так и указатель. а 0 может быть и тем и другим
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Или я чего-то не понимаю?

В данном случае не понимаю я. Так 0 у вас выступает в качестве указателя или символа?
Дайте сингнатуру функции.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы