Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
#1

Указатель на функцию - C++

29.07.2012, 18:48. Просмотров 1024. Ответов 21
Метки нет (Все метки)

Столкнулся с проблемой передачи функции в функцию как переменной. Не могли бы вы объяснить мне эту тему?

Компилятор ругается даже на:

C++
1
2
3
4
5
6
7
8
9
10
11
void z()
{
    
}
 
 
int main()
{
        void *f = &z;
        return 0;
}

И я не понимаю, почему?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.07.2012, 18:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатель на функцию (C++):

Как сделать функцию, возвращающую указатель на функцию (которая в свою очередь возвращает указатель на массив) - C++
Изучаю c++ по одной книжке.Она говорить не умеет.. Так вот понадобилось написать функцию,которая как параметр получает указатель на...

В функцию-метод передать указатель на другую функцию-метод и вызвать через переданный указатель - C++
Друзья! Всем привет. Вот код: class otets { public: void f (void (otets::*p)()); private: void echo_f (){}; ...

Функция, получающая указатель на обычную функцию, получает указатель на метод класса - C++
Здравтсвуйте. Имеется вопрос по указателям на методы класса. Допустим, есть функция( f ), которая принимает указатель на функцию и...

Передача умного указателя в функцию принимающую указатель на указатель - C++
Итак имеется функция со следующим параметром: HRESULT __stdcall Function(SomeClass **param); В случае, когда создаём обычный...

Передать в неуправляемую функцию указатель на указатель - C++
Неуправляемая функция типа FUNC(int ** r); Делаю так fixed (int* ptr = arr) { FUNC((int **)ptr); ...

Указатель на функцию возвращающую указатель - C++
Всем привет. Подскажите, пожалуйста, пример не очень сложной программы, в которой встречается указатель на функцию, принимающую параметр...

21
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
29.07.2012, 21:01 #16
Ksan, Единственный выход это написать оператор вызова, который возвращает нечто и принимает разные параметры (перегрузки). С шаблономи с переменным числом аргументов это сделать просто.
0
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
29.07.2012, 21:03  [ТС] #17
ForEveR, а у шаблона может быть переменное число аргументов?
0
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.07.2012, 21:07 #18
Цитата Сообщение от Ksan Посмотреть сообщение
а у шаблона может быть переменное число аргументов?
Легко
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
template <class F, class... Args>
void foo(F&& function, Args&&... args)
{
    function(args...);
}
 
void bar(const int& a, const double& b)
{
    std::cout << a << ' ' << b << std::endl;
}
 
int main()
{
    foo(bar, 42, 3.14159);
    return 0;
}
Но в C++11
0
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
29.07.2012, 21:11  [ТС] #19
soon, получается, нужна VS2012 beta?
0
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.07.2012, 21:14 #20
Цитата Сообщение от Ksan Посмотреть сообщение
нужна VS2012 beta?
Без понятия, какая студия нужна. Частичная поддержка C++11 в ней, вроде как, уже давно.
0
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
29.07.2012, 21:15  [ТС] #21
soon, ну в каком компиляторе вы написали те строчки?
0
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.07.2012, 21:16 #22
Ksan, g++ 4.7.1
1
29.07.2012, 21:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2012, 21:16
Привет! Вот еще темы с ответами:

Работа с файлом (передать указатель на файл в функцию, вернуть указатель на файл из функции) - C++
Подскажите как передать указатель на файл в функцию, как вернуть указатель на файл из функции. void Open() // из этой функции вернуть...

Как передать параметр типа "указатель на указатель" в функцию? - C++
#include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; #include &lt;iomanip&gt; using std::setiosflags; ...

Зачем передавать в функцию X указатель на callback функцию, если последняя ВНЕШНЯЯ и вызовется БЕЗО ВСЯКОГО УКАЗАТЕЛЯ? - C++
Собсно. То есть ребята, вот пример отсюда: http://www.cplusplus.com/reference/algorithm/count_if/ // count_if example #include...

Передача массива в функцию используя указатель на функцию - C++
У меня имеется готовая программа без передачи функции в функцию указателем, мне нужно передать функцию ввода масива в функцию его обработки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.