Форум программистов, компьютерный форум 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
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
Есть строка 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++ Динамическая списочная структура, содержащая объекты классов, связанных наследованием http://www.cyberforum.ru/cpp/thread1564885.html
В общем. Есть базовый класс и 2 класса наследника. Нужно создать динамическую структуру(пусть это будет односвязный список) в который можно добавлять или удалять объекты любого из 3-х классов. Я сделал односвязный список в который можно добавлять базовый класс. Но вот как реализовать возможность хранения в одном списке различных классов? #include <stdio.h> #include <iostream> #include...
C++ Протестируйте функцию сортировки контейнера У set контейнера странная сортировка, решил написать функцию которая увеличивала на одну единицу значение вектора. Вектор выступает как "виртуальное целое число". Так как стандартный обход char от 0 до -128 и увеличить переменную со значением -128 приведет что переменная будет равна 0. А сортировка у set контейнера от -128 до 127. Вопрос правильно ли работает моя функция. Я просто не знаю как... подробнее

Показать сообщение отдельно
Renji
1851 / 1269 / 290
Регистрация: 05.06.2014
Сообщений: 3,622
29.10.2015, 16:31  [ТС]     Лямбды и захват переменных
Цитата Сообщение от Tulosba Посмотреть сообщение
Т.е. при захвате по значение у тебя будет сгенерирован член-данных с типом значения, при захвате по ссылке - член-данных с типом ссылки.
Ок, скажем по другому. Откуда в этом примере std::function<void()> знает что надо сформировать член данных с ссылкой?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream>
#include<functional>
using namespace std;
int main()
{
    int x=0;
    //в объявлении test ни слова о необходимости хранить ссылку на x
    std::function<void()>test=[&x]{x+=1;};
    //и тем не менее, эта строчка увеличит x на единицу
    test();
    std::cout<<x;
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru