c++- все статьи тега ➜ страница 3


Как правильно указать условия якорения в Spirit X3?

Я новичок в написании парсеров. Я пытаюсь создать парсер, который может извлекать почтовые индексы США из входного текста. Я создал следующие шаблоны синтаксического анализа, которые делают большую часть того, что я хочу. Я могу сопоставить 5-значные почтовые индексы или 9-значные почтовые индексы (90210-1234), как и ожидалось. Однако это не позволяет мне избегать совпадений, таких как: 246764 (возвращает 46764) 578397 (возвращается 78397) Я хотел бы уточнить некоторые привязки усл ...

CMake Qt5 не может создать файл заголовка для файла пользовательского интерфейса AUTOUIC

Я не могу создать заголовок для моих файлов пользовательского интерфейса с cmake 3.5.2 и Qt 5.9. Мои CMakeFileLists.txt: cmake_minimum_required(VERSION 3.5) project( fc_app ) message( STATUS "Configuring project") set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTORCC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) message( STATUS "search OpenCV") find_package( OpenCV 3.2.0 REQUIRED ) message( STATUS "search Qt") find_package( Qt5 5.5.1 REQUIRED Core G ...

Размер 3D текстуры, влияющий на вывод программы без возникновения ошибки

Во-первых, я использую glDebugMessage() вместо glGetError() для определения ошибок. Во-вторых, я выделяю хранилище 3D-текстур следующим образом: glTexImage3D(GL_TEXTURE_3D, 0, GL_RGBA32F, 512, 512, 303, 0, GL_RGBA, GL_FLOAT, NULL); Когда сопонент глубины равен 303 или меньше, моя программа работает точно так, как ожидалось (я выделяю цвет в текстуре и вижу этот цвет в качестве выходного), когда этот параметр равен 304 или выше, программа не работает (экран черный). Я тестировал одну и ту ж ...

Есть ли способ подавить ошибки Intellisense при использовании функций C++11, специфичных для ноября 2012 CTP?

Мой код компилируется и работает просто отлично (пока...), однако, поскольку Intellisense Visual Studio еще не поддерживает новые функции C++11 для компилятора CTP 2012: Наличие кусков совершенно хорошего (хотя и экспериментального) кода, подчеркнутого красным, имеет тенденцию немного сбивать меня с толку. Есть ли способ заставить Intellisense игнорировать ошибки в определенных местах? Может ли кто-нибудь порекомендовать IDE, которая уже предлагает правильную подсветку синтаксиса и проверку э ...

ошибка c++ double free или corruption (out)

Я получаю ошибку "Double free или corruption (out)" после того, как я печатаю свой вывод. Но эта ошибка возникает только для небольших входов. Для больших входных данных программа не выдает эту ошибку. Когда я создаю многомерные массивы внутри main и удаляю их, я не получаю ошибку. Я опубликовал здесь только ту часть кода, которая имеет отношение к этому вопросу. Пожалуйста, объясните, как решить эту проблему. #include<iostream> #include<vector> using namespace std; class Knapsack{ ...

OpenGL альтернативы GLEW, который имеет определенные аргументы или решение для него

Поэтому я опубликовал вопрос, аналогичный этому в stackoverflow, но решение казалось, что его можно решить более простым решением. В основном, я использую GLEW для загрузки моих заголовочных файлов OpenGL и т. д., без проблем, но поскольку я использую VIM и Clang_Complete для завершения аргумента, я застрял с тем, чтобы иметь только имя завершено и не иметь никаких аргументов на самом деле показано. Поскольку, по-видимому, функции определяются как #define FOO somefunction И не определен ка ...

"Оптимальная" буферизация ввода - вывода-задача программиста или ядра?

Моя задача очень проста: прочитать и разобрать большой файл на C++ в Linux. Есть два способа: Разбирать байт за байтом. while(/*...*/) { ... = fgetc(...); /* do something with the char */ } Разбирать буфер за буфером. while(/*...*/) { char buffer[SOME_LARGE_NUMBER]; fread(buffer, SOME_LARGE_NUMBER, 1, ...); /* parse the buffer */ } Теперь мне проще разбирать байт за байтом (нет проверки, насколько полон буфер и т. д.). Однако я слышал, что чтени ...

Как использовать QCommandLineParser для Аргументов с несколькими парами?

Интересно, как я могу использовать множественные или суб-аргументы с QCommandLineParser ? Например: /home/my_app --my_option_with_two_params first_param second_param --my-option-with-one-param param? ...

Чем отличаются ReSharper C++ и Visual Assist

Чем они отличаются друг от друга? JetBrains перечисляет некоторые различия здесь, но я слышал, что в списке могут быть некоторые неточности. ...

Отключить импорт встроенных модулей в embedded Python

Я встраиваю Python 3.6 в свое приложение, и я хочу отключить команду импорта в скриптах, чтобы запретить пользователям импортировать любые встроенные библиотеки python. Я хотел бы использовать только сам язык и мои собственные c++ определенные модули. Py_SetProgramName (L"Example"); Py_Initialize (); PyObject* mainModule = PyImport_AddModule ("__main__"); PyObject* globals = PyModule_GetDict (mainModule); // This should work std::string script1 = "print ('example')"; PyRun_String (script1.c_st ...

Как удалить предупреждение расширения C++ 11 в vsCode

Когда я использую тип auto, там просто есть предупреждение в моем vscode 'auto' type specifier is a C++11 extension [-Wc++11-extensions] (14, 10) Итак, как я могу удалить это предупреждение ...

Перевод SSE в Neon: как упаковать и затем извлечь 32-битный результат

Я должен перевести следующие инструкции из SSE в Neon uint32_t a = _mm_cvtsi128_si32(_mm_shuffle_epi8(a,SHUFFLE_MASK) ); Где: static const __m128i SHUFFLE_MASK = _mm_setr_epi8(3, 7, 11, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1); Поэтому в основном я должен взять 4,8, 12 и 16 байт из регистра и поместить его в uint32_t. Похоже на инструкцию по упаковке (в SSE я, кажется, помню, что использовал shuffle, потому что он сохраняет ...

C++: оператор overloading - cout и Cin-ostream функция, на которую нельзя ссылаться - это удаленная функция

Я перегружал cout и Cin opeartor, и когда я попытался использовать его, он дал мне такую ошибку: 1 IntelliSense: function "std::basic_ostream<_Elem, _Traits>::basic_ostream(const std::basic_ostream<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]" (declared at line 84 of "C:Program Files (x86)Microsoft Visual Studio 12.0VCincludeostream") cannot be referenced -- it is a deleted function А вот заголовочный файл моего класса: # ...

Использование Sleep () при использовании таймеров через setitimer

Я использую таймер в своем коде C++ через функцию setitimer из sys / time.ч. Это карты по истечении отправляет сигнал мой метод-обработчик таймера. После этого я не могу использовать функцию сна. Я предполагаю, что это потому, что сон также использует сигнал SIGALRM. Можете ли вы предложить какой-либо обходной путь для этой проблемы? Спасибо за ответ. ...

Устанавливает ли конструктор по умолчанию std:: pair базовые типы (int, etc) в ноль?

После написания: std::pair<int, int> x; Гарантирую ли я, что x.first и x.second равны нулю? Или они могут иметь какую-то ценность? Причина, по которой я беспокоюсь, заключается в том, что я пытаюсь определить, гарантированно ли карта, значения которой являются указателями, вернет NULL, если я обращусь к элементу, которого нет на карте. То есть, если я сделаю: std::map<int, void*> my_map; std::cout << int(my_map[5]) << std::endl; Тогда я гарантированно получу ...

Управление стеком с помощью Lua и C++

Мне нужно передать скрипту lua одну строку (путь к файлу) и вернуть 0 для многих строк. int error = 0; lua_State *L = lua_open(); luaL_openlibs(L); std::vector<string> list_strings; Используется для перемещения строки в стек, прежде чем я загружу и вызову исходный файл if ((error = luaL_loadfile(L, "src/test.lua")) == 0) { lua_pushstring(L, path.c_str()); if ((error = lua_pcall(L, 1, LUA_MULTRET, 0)) == 0) { lua_gettable(L, LUA_GLOBALSINDEX); lua_pcall(L, ...

Должен ли я итератировать вектор с помощью итератора или оператора доступа?

У меня есть вектор, объявленный как std::vector<int> MyVector; MyVector.push_back(5); MyVector.push_back(6); MyVector.push_back(7); Как я должен использовать его в цикле for? Повторяя его с помощью итератора? for (std::vector<int>::iterator it=MyVector.begin(); it!=MyVector.end(); ++it) { std::cout << "Vector element (*it): " << *it << std::endl; } Или его итератором доступа? for (std::vector<int>::size_type i=0; i<MyVector.size(); i++) { s ...

UTF-8, CString и CFile? (C++, MFC)

В настоящее время я работаю над программой MFC, которая специально должна работать с UTF-8. В какой-то момент мне нужно записать данные UTF-8 в файл; для этого я использую CFiles и CStrings. Когда я пишу utf-8 (русские символы, чтобы быть более точным) данные в файл, вывод выглядит следующим образом Ðàñïå÷àòàíî: Ñèñòåìà Ïðîèçâîäñòâî И т. д. Это определенно не utf-8. Чтобы правильно прочитать эти данные, мне нужно изменить настройки системы; изменение символов, отличных от ASCII, на русскую ...

OpenGL в карты теней неверных теней за объектом

Я реализовываю карту теней с направленным светом в Android-приложении OpenGL C++, тень отображается правильно, но в моем коде есть некоторые ошибки, которые приводят к результату, как на прилагаемом изображении: Как показано, над моделью имеются странные триангулированные тени, реализация которых выглядит следующим образом: Сначала создайте буфер глубины и карту глубины следующим образом: if (sun->castShadow) { glCullFace(GL_FRONT); glGenFramebuffers(1, &depthMapFBO); ...

Как запустить проект Codeblocks из внешнего кода и Makefile?

У меня есть код C++, который зависит от boost и других библиотек, и поэтому этот код имеет makefile, который вызывает boost. Сейчас я пытаюсь начать разработку этого кода в codeblocks в linux, поэтому для этого у меня есть два основных вопроса: (1)Как я могу импортировать код в codeblocks как новый проект codeblocks? Это, кажется, хороший rec: http://www.programmingforums.org/thread44976.html (2) Как вызвать makefile с помощью codeblocks вместо того, чтобы codeblocks пытались скомпилирова ...