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

Превращение строки в название исполняемой функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Таблицы в С++ http://www.cyberforum.ru/cpp-beginners/thread683120.html
#include "stdafx.h" #include <iostream> #include <iomanip> #include <conio.h> #include <stdio.h> #define L 80 const int N=3; #define STOP "*" using namespace std;
C++ Портирование кода с С# на С++ Доброго времени суток! Помогите, пожалуйста, перевести на с++ такой код(желательно очень близко к оригиналу!!!): using System; using System.Collections.Generic; using System.Linq; using... http://www.cyberforum.ru/cpp-beginners/thread683095.html
В новый файл записать данные, номера которых с 5-го по 10-й C++
Дан файл, содержащий массив данных. В новый файл записать данные, номера которых с 5-го по 10-й.
Стеки C++
помогите пожалуйста вот что получилось, не могу довести до ума) может кто поможет) задание: Дано арифметическое выражение длинной до 20 символов, оканчивающееся пробелом. выражение содержит ...
C++ Получить html код открытой в Google Chrome страницы http://www.cyberforum.ru/cpp-beginners/thread683049.html
Как достать html код сейчас открытой страницы из хрома?
C++ Вычислить сумму и количество положительных элементов массива Вычислить сумму и количество положительных элементов массива Х. Массив Х. Условия и ограничения: xij больше или равно нуля, но меньше или равно единице. подробнее

Показать сообщение отдельно
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.10.2012, 11:23
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
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <unordered_map>
#include <string>
#include <functional>
 
void foo()
{
    std::cout << "void foo()" << std::endl;
}
 
int bar()
{
    std::cout << "int bar()" << std::endl;
    return 42;
}
 
int baz(int)
{
    std::cout << "int baz(int)" << std::endl;
    return 42;
}
 
int main()
{
    std::unordered_map<std::string, std::function<void()>> m;
    m["foo"] = foo;
    m["bar"] = bar;
    // m["baz"] = baz;  //Error
    m["baz"] = std::bind(baz, 42);
 
    std::string str;
    std::cin >> str;
    try
    {
        m.at(str)();
    }
    catch(...)
    {
        std::cout << "Does not exists" << std::endl;
    }
    return 0;
}
Но это не рефлексия.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru