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

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

Войти
Регистрация
Восстановить пароль
 
Boshop
13 / 13 / 0
Регистрация: 25.09.2012
Сообщений: 122
#1

Объявление функции как аргумента - C++

02.12.2012, 22:56. Просмотров 301. Ответов 5
Метки нет (Все метки)

Как объявить функции в качестве аргумента в другой функции?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2012, 22:56     Объявление функции как аргумента
Посмотрите здесь:

Передача перегруженной функции как аргумента - C++
Есть 3 метода: static int readInteger() { double temp = readDouble(); int result = temp; if (result != temp) throw new...

Использование указателя на структуру как аргумента функции - C++
Я написал функцию, которая принимает указатель на структуру как аргумент функции, но компилятор выдаёт странную ошибку о преобразовании...

Как мне избежать взятия адреса у аргумента функции? - C++
Здравствуйте, написал код, который на одном компиляторе работает как надо, а на другом выдает кривые ответы, порылся в интернете и понял,...

Функция рассчета определенного интеграла. (Передача функции как аргумента) - C++
Есть функция пределенная как: float integrall(float (*argFunc)(float x) , float argTmin, float argTmax, float argStep=1) Если ей...

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

объявление функции - C++
допустим у меня есть программа она использует из библиотеке conio.h функцию getch() вот мне интересно как в программе подключить эту...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
02.12.2012, 23:01     Объявление функции как аргумента #2
C++11
std::function
Boshop
13 / 13 / 0
Регистрация: 25.09.2012
Сообщений: 122
03.12.2012, 07:20  [ТС]     Объявление функции как аргумента #3
Нет не то имею ввиду а объявить ее:
C++
1
void s(int i,/*вот тут объявить как аргумент*/);
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,446
03.12.2012, 08:59     Объявление функции как аргумента #4
Цитата Сообщение от Boshop Посмотреть сообщение
Нет не то имею ввиду а объявить ее
std::function<ReturnType(T1 arg1, T2 arg2, ...)> fun:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <functional>
 
int apply(std::function<int(std::initializer_list<int>)> fun, std::initializer_list<int> args)
{
    return fun(args);
}
 
 
int sum(std::initializer_list<int> args)
{
    int result = 0;
    for(const auto &arg: args)
        result += arg;
    return result;
}
 
int main()
{
    std::cout << apply(sum, {1,2,3,4,5}) << std::endl;
}
Можно еще воспользоваться сишными указателями на функции.
Пaтрик
415 / 390 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
03.12.2012, 09:09     Объявление функции как аргумента #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
int sum(int a, int b)
{
    return a + b;
}
 
int func(int a, int b, int (*f)(int, int))
{
    return f(a, b);
}
 
int main()
{
    int s = func(1, 2, sum);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2012, 13:41     Объявление функции как аргумента
Еще ссылки по теме:

Объявление функции - C++
Что значит подобное объявление: int f() const; Для чего этот &quot;const&quot; ?

Объявление функции в шаблоне - C++
Здравствуйте. Как правильно объявить в шаблонном классе оператор / функцию: без указания типа: const Polynomial operator+(const...

Правильное объявление функции - C++
Честно перекопировал курсач. Возникла такая ошибка: Unit1.cpp(507): E2316 'TForm1::find_gor(int,int,int,int,int,int,float * *,float *...

Объявление функции с массивом - C++
Сейчас задам очень странный вопрос) Что это значит: int F1(char) не могу понять)) спасибо! Добавлено через 25 минут и вот ещё...


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

Или воспользуйтесь поиском по форуму:
Boshop
13 / 13 / 0
Регистрация: 25.09.2012
Сообщений: 122
03.12.2012, 13:41  [ТС]     Объявление функции как аргумента #6
спасибо
Yandex
Объявления
03.12.2012, 13:41     Объявление функции как аргумента
Ответ Создать тему
Опции темы

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