c++- все статьи тега ➜ страница 2
Как вызвать неконстантную функцию внутри функции const (C++)
У меня есть унаследованная функция, которая выглядит следующим образом: int Random() const { return var_ ? 4 : 0; } И мне нужно вызвать функцию в этом устаревшем коде, чтобы она теперь выглядела так: int Random() const { return var_ ? newCall(4) : 0; } Проблема в том, что я получаю эту ошибку: In member function 'virtual int Random() const': class.cc:145: error: passing 'const int' as 'this' argument of 'int newCall(int)' discards qualifiers Теперь я знаю, что для исправления это ...
C++ - альтернатива Integer.parseInt () и String.valueOf () [дубликат]
На этот вопрос уже есть ответ здесь: Самый простой способ преобразовать int в string в C++ 25 ответов В Языке C++. Каковы альтернативы целому числу?parseInt () и строка.valueOf () Java в C++. ...
Как включить масштабирование в QtCharts?
Я хочу иметь возможность увеличивать мои QtCharts с помощью мыши. Лучший способ увеличить масштаб с помощью мыши-это нарисовать прямоугольники и настроить вид на новый меньший прямоугольник. Как я могу реализовать это в QtCharts? У Highcharts есть очень похожий пример, и он выглядит довольно красиво: ...
p / вызов 32-разрядной библиотеки dll из программы C#, запущенной на машине x64
У меня есть программа на C#, которую я компилирую со всеми настройками по умолчанию на компьютере x64. Я хочу вызвать библиотеку DLL, которая, как я знаю, является 32-разрядной (неуправляемой) библиотекой DLL C++. Я могу заставить это работать, когда моя программа C# работает на 32-разрядной машине, но не на 64-разрядной машине. Как я могу указать в вызове DllImport, что я вызываю 32-разрядную dll? Пример того, что у меня есть сейчас: [DllImport("test32bitdll.dll", SetLastError=true)] pub ...
Столкновение c++ SFML не является точным
Я делаю 2D-игру с SFML в C++, и у меня есть проблема с коллизией. У меня есть плеер и карта, сделанная из плиток. Что не работает, так это то, что мое обнаружение столкновений не является точным. Когда я перемещаю игрока вверх, а затем вниз к плиткам, все заканчивается по-другому. Я знаю, что источником этой проблемы может быть вычисление движения игрока с использованием дельта-времени между кадрами-поэтому оно не является постоянным. Но это сглаживает движения, поэтому я не знаю, как это с ...
Аргумент типа "char *" несовместим с параметром типа " LPWSTR"
Об этом, вероятно, уже спрашивали раньше, но я, кажется, не могу найти решение: std::string GetPath() { char buffer[MAX_PATH]; ::GetSystemDirectory(buffer,MAX_PATH); strcat(buffer,"\version.dll"); return std::string(buffer); } Возвращает сообщение об ошибке: argument of type "char *" is incompatible with parameter of type "LPWSTR" Так что да. У кого-нибудь есть ответ? ...
Наследование C++ и включает в себя
Я не новичок в C++, однако я также определенно не эксперт... и все же:) Я пытаюсь понять, как работает наследование. У меня есть класс, производный от базового класса: class Base {} И #include "Base.h" class Derived : public Base {} В моем базовом классе я пытаюсь создать статический метод, который возвращает указатель на производный объект класса: #include "Derived.h" class Base { static Derived* getDerived(); } Теперь я думал, что, поскольку это был статический член, я мог б ...
Как установить заголовочные файлы clang?
У меня есть clang, установленный на моем MacOS (in /usr / bin/clang ) , который, как я думаю, устанавливается по умолчанию на Mac, однако, когда я пытаюсь включить заголовочные файлы clang в скрипт, он говорит, что они не найдены Example.cpp:1:10: fatal error: 'clang/Driver/Options.h' file not found Вопрос: необходимо ли (и возможно ли, если да, то как) устанавливать заголовочные файлы, когда clang уже установлен и построен в системе MacOS (или сам clang должен быть переустановлен одновременн ...
могу ли я использовать std::copy для копирования в stringstream
Недавно у меня был случай, когда я хотел взять необработанные байты значения int64_t в строковый поток. В C++17 я мог бы сделать следующее: uint64_t val = 1984; std::stringstream sstr; sstr << "the byte value is " << std::string_view(reinterpret_cast<char*>(&val), sizeof(decltype(val))); А Боб - твой дядя. Но мне нужно сделать это с помощью C++98, или, может быть, C++11. Я думал сделать следующее: std::copy(reinterpret_cast<const char*>(&tmp_time), ...
Как определить, было ли закрыто соединение с сокетом
Я пишу сокет с C++ под Linux. У меня есть вопрос. Как я могу узнать, закрыл ли клиент соединение. Особенно в ситуации, когда сервер принял клиента и начал ждать каких-то данных от клиента. Но клиент ничего не отправляет и просто закрывает соединение с сервером. В этой ситуации мой сервер вечно ждет каких-то данных. Вот пример моей программы: newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &clilen); if (newsockfd < 0) error("ERROR on a ...
Создание экземпляра shared ptr с помощью make shared
Рассмотрим следующий код: class A { .... shared_ptr<std::thread> mThread; void Step(); void LaunchTrhead(); } void A::LaunchThread() { ... mThread=make_shared<std::thread>(Step); // This line gives an error ... } void A::Step() { ... } Я пытаюсь инициализировать общий указатель mThread так, чтобы он вызывал функцию Step. Однако компилятор выдает мне ошибку "недопустимая инициализация ссылки типа ... из выражения типа "неразрешенный перегруженны ...
Когда следует использовать динамические и статические библиотеки
При создании библиотеки классов в C++ можно выбрать между dynamic (.dll) и статические (.lib) библиотеки. В чем разница между ними и когда уместно использовать какие? ...
сортировка двумерных массивов в C++
Предположим, что у меня есть 2-d массив a[4][2], как это: 1 4 2 3 3 2 4 1 Я хотел бы отсортировать массивы в этом массиве в порядке возрастания их вторых чисел, т. е. после сортировки, я хотел бы, чтобы массив был таким: 4 1 3 2 2 3 1 4 Я подумал о создании карты, которая хранит индексы чисел во вторых столбцах, а затем делает массив чисел во втором столбце и сортирует этот массив, а затем восстанавливает массив из нового порядка второго столбца и второго столбца. карта. Проблема, однако ...
VBO медленнее, чем устаревший метод рисования примитивов - почему?
Я работаю над плиточным приложением OpenGL, C++. Я добавляю пример экрана из приложения, чтобы было более понятно: У меня есть класс Tile, который содержит массив Objects. каждая плитка может хранить до 15 объектов-пример этого Tile с зеленым и желтым квадратом на нем (два объекта), поэтому это 10x10x15 = 1500 Objects для рисования (в худшем случае, потому что я не обрабатываю "пустые"). Обычно это меньше, в моих тестированиях я использую около 600 из них. их. Object имеет свою собственную ...
QApplication:: setWindowIcon работает на Windows XP, Но не работает на Windows 7
В простом приложении Qt, начинающемся так: int main(int argc, char* argv[]) { QApplication app(argc, argv); app.setWindowIcon(QIcon(":/qapp/appicon.ico")); ... Мы устанавливаем значок во второй строке (эта строка и файл значка в resources-единственное различие между моей тестовой программой и приложением, сгенерированным Qt wizard). Это приложение отлично работает на Windows XP, Но на Windows 7 мы не можем видеть наш значок в левом верхнем углу окна (система показывает значок по умолчани ...
Преобразование речи в текст в Linux
Я планирую запустить приложение, которое преобразует речь в текст в Linux. Существуют ли какие-либо существующие интерфейсы, чтобы я мог их расширить? или есть ли такое приложение в Linux? Любой входы на этом? EDIT: приложение, которое я планирую написать, должно быть способно конвертировать каждое слово, которое мы говорим, в текст, а не только Да/нет. ...
Перегрузка операторов C++ для операций с комплексными числами
У меня есть задание на C++, и у меня возникли проблемы с началом работы. Цель состоит в том, чтобы " создать класс, который использует следующие перегруженные операторы для комплексных чисел: >> Мой вопрос не о синтаксисе этого, а больше о логике. Я мог бы использовать некоторую помощь "мозгового штурма". Входной Образец: 2.5 -2.2 1.0 1.0 Выходной Образец: A = (2.5) + (-2.2)i B = (1.0) + (1.0)i A + B = (3.5) + (-1.2)i А-В = .............. A * B = .............. A / B = ...... ...
Разработка сервера Excel RTD на языке C++
Я хочу написать Excel RTD сервер на C++, но пока не удалось найти и завершить учебники о том, как это сделать, кроме этого http://weblogs.asp.net/kennykerr/archive/2008/12/02/Rtd5.aspx . Однако, поскольку я новичок в этом деле, я думаю, что мне нужно что-то более полное. Может ли кто-нибудь из вас указать мне на пример с++? Спасибо EDIT: для тех, кто заинтересован, я нашел это: http://www.codeproject.com/Articles/245265/Guide-to-Writing-Custom-Functions-in-Excel-Part-II.aspx ...
Неустранимая ошибка во время Пы завершить во встраиваемых приложений на языке Python
Спасибо за помощь с этим-варианты этого вопроса задавались много раз, но я не нашел полного ответа. Я добавляю встроенный Python 3.4.2 к существующему инструменту симулятора, написанному на C++ с использованием классов MS MFC. Приложение является многопоточным, так что пользователь может выполнять сценарии Python и взаимодействовать с системой симулятора. Как мне успешно завершить работу? Я с помощью Джил и состояние потока команд в правильном порядке? Я заканчиваю интерпретатор Python поток пр ...
конвертировать из char в char16 t
Мой конфиг: компилятор: gnu gcc 4.8.2 я компилирую с C++11 Платформа / ОС: Linux 64bit Ubuntu 14.04.1 LTS У меня есть такой метод: static inline std::u16string StringtoU16(const std::string &str) { const size_t si = strlen(str.c_str()); char16_t cstr[si+1]; memset(cstr, 0, (si+1)*sizeof(char16_t)); const char* constSTR = str.c_str(); mbstate_t mbs; memset (&mbs, 0, sizeof (mbs));//set shift state to the initial state size_t ret = mbrtoc16 (cstr, constS ...