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

Шаблон класса Wrapper - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Очередь «первый вошел — первый вышел» (FIFO) http://www.cyberforum.ru/cpp-beginners/thread1237359.html
Очередь — это устройство для хранения данных, похожее на стек. Отли-чие в том, что в стеке последний сохраненный элемент будет первым извлеченным, тогда как в очереди первый сохраненный элемент будет первым извлеченным. То есть в стеке используется подход «последний вошел — первый вышел» (LJFO), а в очереди используется подход «пер- вый вошел — первый вышел» (FIFO). Очередь похожа на простую...
C++ Кроссплатформенное приложение Сразу хочу сказать что с С++ только знакомлюсь (есть опыт в web языках). Вот к примеру мне нужно сделать такую вот задачку - по экрану передвигается объект с помощью стрелок и мыши, а так же есть пару полей ввода и кнопок. Вопрос таков - как правильно создавать приложение так что бы оно работало на любой платформе? Я конечно могу ошибаться, но если создать win32 приложение то оно только под... http://www.cyberforum.ru/cpp-beginners/thread1237357.html
C++ Type name expected
Ребят, туплю, что здесь не так с типом имени? int InitializeNodes(char *pdata, DWORD dwSize)
Передача аргументов в функцию и возврат значения C++
Зачем нужны аргументы функции? Что делает return, если задать ненулевое значение? Как из main() перенести переменную в другую функцию? Подскажите, пожалуйста.
C++ Как не допустить повторное использование кода http://www.cyberforum.ru/cpp-beginners/thread1237302.html
Здравствуйте. У меня есть один заголовочный файл, и в нем присутствует пара констант и функция: #ifndef H_H #define H_H ....... const std::string CARDS_NAMES = {
C++ Не могу понять назначение двух библиотек привет вы извените конечно покажусь просто нубом каким-то но смотрел везде в гугле здесь не могу понять для чего эти библиотеки #include < "stdafx.h"> #include <iomanip> можете объяснить мне как-будто мне 5 лет подробнее

Показать сообщение отдельно
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
01.08.2014, 19:29     Шаблон класса Wrapper
Цитата Сообщение от stima Посмотреть сообщение
Как мне написать такой шаблон.
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
template<typename WrappedType>
class Wrapper
{
    template <typename FType>
    struct Extract;
 
    template <typename R, typename... Args>
    struct Extract<R(Args...)>
    {
        typedef R (WrappedType::*mem_func_type)(Args...);
    };
protected:
    template <typename FType, typename... Args>
    void connect(typename Extract<FType>::mem_func_type mem_func, Args &&  ...args)
    {
        std::function<FType> f = std::bind(mem_func, static_cast<WrappedType*>(this), std::forward<Args>(args)...);
    }
};
 
class Test : public Wrapper<Test>
{
 
public:
    Test()
    {
        connect<void()>(&Test::a);
        connect<void(int)>(&Test::a1, std::placeholders::_1);
    }
 
    void a()
    {
        std::cout << "Test::a" << std::endl;
    }
 
    void a1(int _1)
    {
        std::cout << "Test::a1 " << _1 << std::endl;
    }
};
Оно?
 
Текущее время: 09:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru