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

Верно ли такое использование лямбд - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Необязательный параметр функции http://www.cyberforum.ru/cpp-beginners/thread1100947.html
Есть класс с методом add, который в качестве формальных параметров принимает строку и число. Так вот, число не обязательный параметр. Кусок из h-файла: int add(QString f,int p = 2); Кусок из cpp: int stack::add(QString f,int p = 2){ Ошибка: default argument given for parameter 2 of 'int stack::add(QString, int)' Ошибка: after previous specification in 'int stack::add(QString, int)' Но,...
C++ Программа работает правильно, но не выводит одной строки Программа правильно работает и все корректно выполняет, но не выводит одной фразы и я не понимаю почему. Буду рада любой помощи) Строка 94 #include <iostream> using namespace std; void main() { begin: int n; http://www.cyberforum.ru/cpp-beginners/thread1100940.html
C++ Ввести массив из строк, и посчитать все гласные буквы в каждой строке
Создать массив с 4-х строк, необходимо подсчитать скок гласных букв в каждой строке и вывести результат на экран.
Реализовать шаблон сортировки массива методом слияния C++
Реализовать шаблон сортировки массива методом слияния.
C++ Чтение до конца строки http://www.cyberforum.ru/cpp-beginners/thread1100932.html
В файле лежит только одно слово, мне его надо считывать while по символьно, я никак не разберусь с условием вайла , while( !f.eof() ) не прокатывает, либо можно так что есть переменная типа string в нее я считаю это слово. а потом мне опять нужен вайл чтобы посимвольно считать из него символы, так вот помогите с условием вайла, извините может это совсем тупой вопрос, но я только начинаю...
C++ Ошибка загрузки сэмплов из WAV Здравствуйте, извиняюсь сразу,миллион раз обсуждали эту проблему,но поиск мне не помог ее решить. у меня программа загружает wav файл и потом я должен получить массив с отчетами, я не знаю как учесть заголовок,чтобы он не записывался в сэмплы, но беда вся в том , что n (количество отчетов) у меня получается в 2 раза больше чем j (сколько отчетов записывается в массив) ,зарание благодарен ... подробнее

Показать сообщение отдельно
iRomul
 Аватар для iRomul
158 / 99 / 11
Регистрация: 17.10.2012
Сообщений: 474
Завершенные тесты: 1
20.02.2014, 01:46     Верно ли такое использование лямбд
Доброй ночи. Есть функция:
C++
1
void setMouseCallback(const string& winname, MouseCallback onMouse, void* userdata=0 )
На вход она принимает MouseCallback - функцию, вида:
C++
1
void my_mouse_callback( int event, int x, int y, int flags, void* param );
Мне же нужно выдернуть несколько объектов из локальной функции (в которой я вызываю setMouseCallback). Можно, конечно, создать структуру этих объектов и тащить еще через void* param, но я решил поступить проще - использовать лямбды. Однако такая запись:
C++
1
2
3
4
5
6
7
8
9
10
setMouseCallback(
        image_window,
        [&preview, &basic_test](int event, int x, int y, int flags, void* param) -> void {
            if(event == CV_EVENT_LBUTTONDOWN) {
                //TODO: удалить отладочный вывод
                cout << "[Callback]: x[" << x << "] y[" << y << "]\n";
                draw_target(preview, x, y, 20);
            } //if
        }//lambda
    );
вызывает ошибку:
error C2664: cv::setMouseCallback: невозможно преобразовать параметр 2 из "main::<lambda_8f6701a187bd999eb050d952113cacc4>" в "cv::MouseCallback" c:\short\projects\ofbench\ofbench\main.cpp 53
В чем может быть проблема? Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru