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

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

Войти
Регистрация
Восстановить пароль
 
orange_fox
34 / 34 / 6
Регистрация: 06.04.2014
Сообщений: 189
#1

Хранение и вызов различных типов функций в одной переменной - C++

09.08.2014, 14:16. Просмотров 360. Ответов 3
Метки нет (Все метки)

Есть класс, который должен хранить функции и давать возможность их вызывать.
Он выглядит примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class Functions
{
public:
    enum paramType{INT, DOUBLE, NOTYPE};
    int intVar;
    double doubleVar;
    template <class Functor>
    void setFunction(Functor F, paramType pType)
    {
        function = F; // ???
        type = pType;
    }
    void execute()
    {
        switch (type)
        {
        case INT:
            function(intVar);
            break;
        case DOUBLE:
            function(doubleVar);
            break;
        case NOTYPE:
            function();
        }
    }
private:
    funcVar function; // ???
    paramType type;
}
Вопрос: как правильно сохранять функции с неопределённым типом и как потом их правильно вызывать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2014, 14:16     Хранение и вызов различных типов функций в одной переменной
Посмотрите здесь:

Вызов различных пользовательских функций с помощью switch - C++
# include &lt;iostream&gt; # include &lt;stdio.h&gt; #include &lt;string&gt; # include &lt;stdlib.h&gt; using namespace std; void lab12(char *str); ...

Хранение разных типов - C++
Приветствую всех. Возник вот такой вопрос. У меня есть, например, 3 разных структуры, каждая из которых имеет разные поля: struct one ...

Итерационные циклы,Определение и вызов функций,Использование библиотечных функций stdio.h - C++
Помогите решить задания: 1.Дано натуральное число n. Найти разность между первой цифрой этого числа и суммой всех остальных. ...

Вызов функций внутри других функций - C++
#include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;iomanip&gt; using namespace std; ...

Возвращение различных типов данных - C++
Привет. Есть необходимость реализации обработки различных типов данных. Имеются 3 различных структуры, необходимо реализовать их чтение,...

Объявление переменных различных типов - C++
Совсем не понимаю задачу Помогите пожалуйста!! ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
09.08.2014, 15:01     Хранение и вызов различных типов функций в одной переменной #2
Чтобы предлагать какое-то решение хотелось бы ознакомиться с первоначальной задачей. Т.е. откуда вообще возникло желание в одну и ту же переменную писать разные типы.
CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 686
Записей в блоге: 1
09.08.2014, 15:17     Хранение и вызов различных типов функций в одной переменной #3
orange_fox, какие есть ограничения на функции? Ну и хранить где?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.08.2014, 15:36     Хранение и вызов различных типов функций в одной переменной
Еще ссылки по теме:

Ввод данных различных типов. - C++
Ввод данных. Читаю книжку по плюсам. Застопорился на моменте с вводом данных, когда строки, числа и сомволы чередуются. Допустим такой...

Хранение экземпляров классов-наследников, и вызов их методов - C++
Столкнулся с проблемой. Есть класс-родитель и 2 класса-наследника. class Base { public: void baseFunc(); }; class...

Хранение прототипов методов класса и их непосредственной реализации в различных файлах - C++
вот собственно решил перейти на тот этап, когда прототипы в *.h а определения в *.cpp но почти сразу столкнулся со странной ошибкой в...

Массив из массивов различных типов (malloc) - C++
На сколько я знаю, объявление двумерного массива (интов) выглядит так: int** myArr = (int**)malloc(n * sizeof(int*)); for (int i =...

Ввод значений переменных различных типов - C++
Всем доброго вечера. возникла проблемка с одним задание: Ввод значений переменных различных типов(строковый, целый без запятой, целый с...

Инстанцирование шаблона для различных типов - C++
Помогите пожалуйста с программой... Нужно создать шаблон класса, для работы со структурой произвольного типа данных. В функции main()...


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

Или воспользуйтесь поиском по форуму:
DrOffset
7062 / 4203 / 949
Регистрация: 30.01.2014
Сообщений: 6,970
09.08.2014, 15:36     Хранение и вызов различных типов функций в одной переменной #4
orange_fox, я конечно могу ошибаться, но мне кажется, что ты реализуешь std::function. Если я прав, то можно начать отсюда.
Yandex
Объявления
09.08.2014, 15:36     Хранение и вызов различных типов функций в одной переменной
Ответ Создать тему
Опции темы

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