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

Передача лямбда в функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запутался в ссылках http://www.cyberforum.ru/cpp-beginners/thread608237.html
Долго сижу и никак не могу понять в чём ошибка. Вот 3 файла. Они подключены правильно и работают. #include <iostream> #include <iomanip> #include <windows.h> #include <math.h> #include...
C++ Шифрование и дешифрование Помогите написать программу, которая будет шифровать и дешифровать матррицу. http://www.cyberforum.ru/cpp-beginners/thread608228.html
Добавление элемента в начало односвязного списка C++
Здравствуйте, я не где не могу найти функцию по добавлению элемента в начало односвязного списка. Пожалуйста подскажите ее.
C++ Изменение окна сообщения для исключительной ситуации
В программе есть контролируемая исключительная ситуация. Мне надо програмно изменить надпись вверху. Сейчас эта надпись берётся из названия exe фала. И обнаружил ещё один глюк. Название...
C++ Нужна поправка http://www.cyberforum.ru/cpp-beginners/thread608164.html
здравствуйте.поправьте,пожалуйста, моё убожество.написал сначала функциями.а нужно в ооп. объектами не могу написать (не дружу я с ними:() я конечно попытался,но не вышло))...
C++ GetPixel, почему первый иф равен тру, а второй - нет Уважаемые знатоки, в первом GetPixel корды верхнего левого угла иконки поплавка (певая вкладка, опять таки вверху слева), а во втором верхний левый пиксель собственно игры. Почему первый иф равен... подробнее

Показать сообщение отдельно
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2

Передача лямбда в функции - C++

18.06.2012, 11:37. Просмотров 2526. Ответов 8
Метки (Все метки)

В чем смысл передачи лямбда выражения функции?
C++
1
2
auto square = [](int x) { return x * x; };
std::cout << square(16) << std::endl;
или
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Foo
{
public:
    Foo(): _x(5) {}
 
    void doSomething() {
        auto lambda = [this](int x) {
            std::cout << _x * x << std::endl;
        };
 
        lambda(4);
    }
 
private:
    int _x;
};
Не понимаю для чего это придумали и какая от этого польза. Не проще ли определить стандартную ф-цию?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru