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

Функция как аргумент другой функции - C++

Восстановить пароль Регистрация
 
Fura
Сообщений: n/a
13.11.2012, 15:24     Функция как аргумент другой функции #1
Добрый вечер, уважаемые.
Собственно, пытаюсь функцию запихнуть в аргументы другой функции. На подобии маткадовского root(f(x),x,a,b). Возможно ли такое? пытался насилу затолкнуть
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include <math.h>
double x;
double y(double x);
double f(double y(double x));
using namespace std;
int main()
{
    cout << f(y(x)) << "\n";
    system("pause");
    return 0;   
}
double y(double x)
{
    return x/2;
}
double f(double y(double x))
{
    return y(2);
}
но ругается мол невозможно преобразовать параметр 1 из "double" в "double (__cdecl *)(void)"

спать не могу, кушать не могу - всё мучаюсь. друзья не знают, поиск не ищет, даже примерно в какой стороне искать не знаю(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2012, 15:24     Функция как аргумент другой функции
Посмотрите здесь:

Класс как аргумент функции C++
Есть функция с кучей аргументов, как её вызвать в другой функции (если половины аргументов у меня нет)? C++
C++ std::setw() как аргумент функции
C++ Произвольный объект как аргумент функции
C++ Указатель на имя файла как аргумент функции. Как реализовать?
Передача потока (текущ.позиции курсора в файле) как аргумент функции C++
C++ Auto как аргумент функции
C++ Функция в качестве аргумента другой функции по умолчанию

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
13.11.2012, 15:33     Функция как аргумент другой функции #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <cstdlib>
using namespace std;
 
double y(double); // ф-ция, принимающая дабл и возвращающая дабл
double f(double (*)(double)); // принимает адрес ф-ции принимающей дабл и возвращающей дабл
 
int main()
{
    cout << f(&y) << "\n"; // передача адреса
    system("pause");
    return 0;
}
 
double y(double x)
{
    return x/2;
}
 
double f(double (*p)(double))
{
    return p(2);// вызов этой ф-ции
}
Fura
Сообщений: n/a
13.11.2012, 15:49     Функция как аргумент другой функции #3
Мои потомки будут чтить тебя, igorrr37!
Yandex
Объявления
13.11.2012, 15:49     Функция как аргумент другой функции
Ответ Создать тему
Опции темы

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