Форум программистов, компьютерный форум 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? подробнее

Показать сообщение отдельно
Герц
524 / 341 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
23.03.2013, 14:02
Первый вариант:
C++
1
2
3
4
void f(long, long, int); // f1
void f(long, int, int); // f2
 
f(long, long, long); // calls f1
Смотрим последовательность преобразований:
arg1: f1 и f2 без разницы, long -> long
arg2: f1 имеет лучшее преобразование, long -> long
arg3: f1 и f2 без разницы, long -> int

При сравнении последовательность преобразований выходит, что f1 однозначно лучше (ни для одного из аргументов преобразование не хуже чем у f2, а для второго аргумента - лучше).

Второй вариант:
C++
1
2
3
4
void f(int, long, long); // f1
void f(long, int, int); // f2
 
f(long, long, long); // ambiguity
arg1: f2 имеет лучшее преобразование
arg2: f1 имеет лучшее преобразование
arg3: f1 имеет лучшее преобразование

В этом случае нельзя однозначно сказать, какое из преобразований лучше.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru