Форум программистов, компьютерный форум CyberForum.ru

Перегрузка функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в двусвязном списке http://www.cyberforum.ru/cpp-beginners/thread815602.html
Задача - сделать очередь с приоритетным исключением на основе двухсвязного списка. Проблема в том, что элементы не всегда становяться по приоритету. Подскажите, пожалуйста, в чем ошибка. struct Elem { int data; // просто данные int pri; // приоритет Elem * next, * prev; };
C++ Что получится из кода Необходимо описать результат выполнения программы: 1) 2) 3) 4) 5) http://www.cyberforum.ru/cpp-beginners/thread815601.html
C++ написать программу перевода введенного символа
написать программу перевода введенного символа от a до f в верхний регистр, а другие символы заменять на Z
C++ Написать программу проверки попадания введенного числа в диапазон
написать программу проверки попадания введенного числа в диапазон от -6 до -2
C++ 2 символа s2 последние и средние 3 символа s1 - соединить http://www.cyberforum.ru/cpp-beginners/thread815571.html
Помогите пожалуйста! Ввести строки s1 и s2. Последние 2 символа s2 и средние 3 символа s1 - соединить. В полученной строке посчитать количество "1". Выводить на екран монитора: -введенные строки -Промежуточные результаты -Конечные результаты Взять во внимание такие ситуации: - Один из заданных строк(или все строки) могут быть пустыми
C++ Как изменить размер главного окна в visual studio 2005? Как изменить размер главного окна в visual studio 2005? подробнее

Показать сообщение отдельно
ViktorKozlov
133 / 125 / 2
Регистрация: 13.12.2012
Сообщений: 293
22.03.2013, 17:43  [ТС]     Перегрузка функции
Цитата Сообщение от Герц Посмотреть сообщение
Называется Argument Dependent Lookup (ADL), в стандарте четко описано, в каком порядке ищутся подходящие функции.
void(long, long, int) является лучшим совпадением чем void(long, int, int), так как в первом случае понижающее приведение с возможной потерей точности long->int требуется лишь для одного параметра (последнего), а не для двух.
Но если написать void func(int f, long g, long q), то приведение потребуется также для одного параметра (первого), только в таком случае почему-то уже получается неоднозначность
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru