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

Указатель на функцию с аргументами по умолчанию - C++

Восстановить пароль Регистрация
 
ramybozy
8 / 8 / 0
Регистрация: 01.07.2012
Сообщений: 138
04.09.2012, 09:09     Указатель на функцию с аргументами по умолчанию #1
Можно ли вообще определить и записать подобное чудо?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.09.2012, 09:09     Указатель на функцию с аргументами по умолчанию
Посмотрите здесь:

C++ В функцию-метод передать указатель на другую функцию-метод и вызвать через переданный указатель
Зачем передавать в функцию X указатель на callback функцию, если последняя ВНЕШНЯЯ и вызовется БЕЗО ВСЯКОГО УКАЗАТЕЛЯ? C++
C++ Напишите функцию Swap(a, b), аргументами которой могут быть числа любого типа
C++ Указатель на функцию и параметры по умолчанию
Работа с файлом (передать указатель на файл в функцию, вернуть указатель на файл из функции) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
04.09.2012, 09:47     Указатель на функцию с аргументами по умолчанию #2
Ну смотря что хотеть. Но вызвать функцию с аргументами по умолчанию через указатель на эту функцию не получится, придётся указывать все параметры.
C++
1
2
3
4
5
6
7
8
9
10
11
12
void f1(int a = 15, int b = 10) {}
 
void (*p1)(int,int);
void (*p2)();
 
int main(void)
{
    p1 = f1;
    p1();            // error C2198: void (__cdecl *)(int,int): слишком мало аргументов для вызова
    p1(15, 60);   // ОК
    p2 = f1;       // error C2440: =: невозможно преобразовать 'void (__cdecl *)(int,int)' в 'void (__cdecl *)(void)'
}
Ошибки, в общем, предсказуемые.
ramybozy
8 / 8 / 0
Регистрация: 01.07.2012
Сообщений: 138
04.09.2012, 10:05  [ТС]     Указатель на функцию с аргументами по умолчанию #3
Ну так не интересно.
ИНтересно вот так:
C++
1
void (*p1)(int = 10, int = 10);
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
04.09.2012, 10:11     Указатель на функцию с аргументами по умолчанию #4
error C2383: p1: аргументы по умолчанию не разрешены для этого символа

Добавлено через 2 минуты
Я думаю, функциональный объект подойдёт для этой цели гораздо лучше, чем поиск нового велосипеда.
PSIAlt
 Аватар для PSIAlt
86 / 86 / 8
Регистрация: 19.06.2012
Сообщений: 245
04.09.2012, 11:46     Указатель на функцию с аргументами по умолчанию #5
Указатель на функцию с аргументами по умолчанию
Думаю нужно заюзать комбу bind1st и mem_ptr, а еще проще сделать прокси функцию
Yandex
Объявления
04.09.2012, 11:46     Указатель на функцию с аргументами по умолчанию
Ответ Создать тему
Опции темы

Текущее время: 13:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru