Адрес перегруженных функций
Использование имени функции без аргументов возвращает адрес этой функции.Примеры.
int Func( int i, int j );
int Func( long l );
...
int (*pFunc) ( int, int ) = Func;
В предыдущем примере первая версия Func выделяет и его адрес копируется в pFunc.
Компилятор определяет версию функции, которая будет выбрать путем нахождения функция со списком аргументов точно совпадает с тем, которые целевого объекта.Аргументы в перегруженных объявлении функций совпадают с одним из следующих:
Инициализируемые объект (как показано в предыдущем примере)
Левая часть оператора присваивания
Формального аргумента функции
Формального аргумента определяемый пользователем оператор
Возвращаемый тип функции
Если нет, то найдено точное соответствие, выражение, которое принимает адрес функции неоднозначно и формируется ошибка.
Обратите внимание на то nonmember, функция Func, используемый в предыдущем примере, применяются те же правила, принимающая адрес перегруженных функций элементов.