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

Лямбды и захват переменных - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Автопоэт http://www.cyberforum.ru/cpp/thread1565603.html
Здравствуйте. Есть словарь со словами и ударениями к этим словам обозначены символом ' . И надо из этих слов составить двустийшее по принципу ямб или хорей. Слабо представляю себе это. По идее для начала следует разделить слова на слоги, а следом разделить слова по ударениям на 1,2,3… слог. Но по какому принципу брать слова я не пойму. Смогу воспринять даже на словах, код не обязательно....
C++ Массив пикселей RGB в JPEG Всем доброго времени суток! Пишу программу под МК на С/С++. На входе имею массив пикселей в формате RGB565 (2 байта/пиксель). На выходе нужно сформировать JPEG-файл (первоначально без сжатия) и записать на SD-карту. Нашел библиотеку libjpeg, которая должна уметь это делать: http://www.ijg.org/ Нужна помощь, чтобы с ней разобраться. Кто-нибудь может поделиться кодом как сделать нечто... http://www.cyberforum.ru/cpp/thread1565600.html
Long int и int : не понимаю! C++
Вот простой код на С++. Который находит количество цифр в числе . Я создаю переменную типа long int number1; . После запуска программы для проверки вывожу b , чтобы проверить чему оно равно , но ответ всегда 8! Какое бы число я не ввел! Но если поменять тип на int number 1; - Все работает! Почему long int number 1 , так влияет на переменную int b = 0; ? А если поменять на int number 1 , нет?...
C++ Чем _Get_pointer_type отличается от обычного получения типа указателя
При попытке более детально понять работу стандартных контейнеров в STD столкнулся с немалым количеством головоломок. вот одна из них. typedef typename _Get_pointer_type<_Alloc>::type pointer; переходим к объявлению template<class _Ty> struct _Get_pointer_type
C++ Необходимо протестировать костыль. Конвертирование Glib::ustring в sf::String http://www.cyberforum.ru/cpp/thread1565314.html
Есть строка Glib::ustring, пытался её конвертировать в sf::String, и вроде бы всё работает без особых костылей, но как добрался до кириллицы, нифига ничего не работает. Придумал такой костыль: sf::String convert_from_ustring (const Glib::ustring& source_string) { static std::wstringstream ss ; ss.clear() ; ss << source_string ; return sf::String(ss.str()) ; }
C++ Динамическая списочная структура, содержащая объекты классов, связанных наследованием В общем. Есть базовый класс и 2 класса наследника. Нужно создать динамическую структуру(пусть это будет односвязный список) в который можно добавлять или удалять объекты любого из 3-х классов. Я сделал односвязный список в который можно добавлять базовый класс. Но вот как реализовать возможность хранения в одном списке различных классов? #include <stdio.h> #include <iostream> #include... подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4382 / 3225 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
29.10.2015, 16:39     Лямбды и захват переменных
Ровно оттуда же, откуда и при явном использовании функтора:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
#include<functional>
using namespace std;
 
struct F {
    F(int& i): i_(i) {}
    void operator()() const { i_+=1; }
private:
    int& i_;
};
 
int main()
{
    int x=0;
    //в объявлении test ни слова о необходимости хранить ссылку на x
    //std::function<void()>test=[&x]{x+=1;};
    F test(x);
    //и тем не менее, эта строчка увеличит x на единицу
    test();
    std::cout<<x;
    return 0;
}
Или теперь мы уже про std::function, а не про лямбду?
 
Текущее время: 17:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru