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

Передача функции-члена в качестве аргумента (не через указатель) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Codeblocks. Can't find compiler executable in your configured search path's for GNU GCC COMPILER http://www.cyberforum.ru/cpp/thread815951.html
"Can't find compiler executable in your configured search path's for GNU GCC COMPILER" вот такое вот сообщение при запуске Code Blocks. Ничего не компилируется, следовательно. Что делать, надеюсь на...
C++ Не могу создать исполняемый файл Здравствуйте. Прошу прощения за столь нубский вопрос. Но как создать исполняемый файл в компиляторе Open Watcom? В бэйсике и паскале всё просто, там есть Compile. А здесь я не нашёл ничего похожего... http://www.cyberforum.ru/cpp/thread815561.html
C++ Можно ли на c++ создать программу подобную camstudio (захват видео с экрана)?
Каким образом записывает видео с экрана?Можно ли на c++ сделать что то такое? И что нужно знать чтобы сделать что то подобное помогите
C++ Как думаете?
Я тут наткнулся на ресурс и ... В общем интересно стало фейк или хаккинг? Кто как думает? И ещё, если есть объяснения или как это сделать, можно поделиться со мной?? Вот ссылка: "клик" - это...
C++ Проблемы со списком http://www.cyberforum.ru/cpp/thread810385.html
Никак не получается разобраться со списками. В программе вроде создаю простейший список из 2х элементов. Далее в цикле вывожу это все. Почему у меня выводится сначала 2 потом 1? И вообще правильно ли...
C++ Ошибка R6034 C++ При запуске приложения получаю вот это: Как её исправить? Молю о помощи, полгугла перерыл, прежде чем писать сюда... подробнее

Показать сообщение отдельно
Kastaneda
Jesus loves me
Эксперт С++
4756 / 2960 / 243
Регистрация: 12.12.2009
Сообщений: 7,516
Записей в блоге: 2
Завершенные тесты: 1

Передача функции-члена в качестве аргумента (не через указатель) - C++

23.03.2013, 21:38. Просмотров 2865. Ответов 8
Метки (Все метки)

Привет!
Озадачился такой проблемой - вот пример того, что нужно
C++
1
2
3
4
typedef void(class1::*method)();
void func (method) {};
 
func (&class1::func); // вызов
Но хочется сделать кошерно, и, чтоб было совсем кошерно, решил заюзать С++11, которого я почти не знаю
Вот что получилось
C++
1
2
3
4
typedef std::function<void(param&)> method;
void func (method){};
 
func(std::bind(&class1::methodName, object_ptr, std::placeholders::_1)); // вызов
согласитесь - выглядет ужасно. Хочеться std::bind() спрятать внуть функции, т.е. вот так
C++
1
2
3
4
5
6
7
8
typedef void(class1::*method)();
 
void func (method)
{
    // blah blah blah std::bind (method, ...)
}
 
func(&class1::methodName); // вызов
но не могу придумать как обойтись без указателя void(class1::*method)().
Знаю, что есть люди, которы ориентируются в С++11, может есть идеи?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru