c++- все статьи тега ➜ страница 26
Является ли "float A = 3.0;" правильным утверждением?
если у меня есть следующее объявление: float a = 3.0 ; это ошибка? Я читал в книге, что 3.0 это double значение и что я должен определить его как float a = 3.0f. Так ли это? ...
Что такое дескриптор в C++?
Мне сказали, что дескриптор-это своего рода указатель, но нет, и что он позволяет вам сохранять ссылку на объект, а не сам объект. Что такое более подробное объяснение? ...
Как назначить псевдоним имени функции в C++?
создать новое имя для типа переменной или пространства имен. Но как мне назначить новое имя функции? Например, я хочу использовать имя holler на printf. #определить, является очевидным... а как иначе? решения: #define holler printf void (*p)() = fn; //function pointer void (&r)() = fn; //function reference inline void g(){ f(); } ...
Как построить строку std::из вектора std::?
Если не считать (очевидного) построения строки стиля C, то сначала используйте ее для создания std::string, есть ли более быстрый/альтернативный/"лучший" способ инициализации строки из вектора символов? ...
Переопределение флагов компиляции для отдельных файлов
Я хотел бы использовать глобальный набор флагов для компиляции проекта, что означает, что на моем верхнем уровне CMakeLists.txt файл я указал: ADD_DEFINITIONS ( -Wall -Weffc++ -pedantic -std=c++0x ) однако, для конкретного файла (скажем, " foo.cpp") в подкаталоге, я хочу переключить скомпилируйте флаги, чтобы не применять-Weffc++ (включенная коммерческая библиотека, которую я не могу изменить). Чтобы упростить ситуацию использовать only-Wall, я попробовал: SET_SOURCE_FILES_PROPERTIES( foo. ...
Какой самый простой способ проанализировать файл INI в C++?
Я пытаюсь разобрать INI-файл с помощью C++. Любые советы о том, что это лучший способ достичь этого? Должен ли я использовать инструменты Windows API для обработки INI-файлов (с которыми я совершенно не знаком), решение с открытым исходным кодом или попытаться проанализировать его вручную? ...
Цикл итератора против цикла индекса [дубликат]
Возможные Дубликаты:зачем использовать итераторы вместо индексов массива? я пересматриваю свои знания на C++, и я наткнулся на итераторы. Одна вещь, я хочу знать, что делает их такими особенными, и я хочу знать, почему это: using namespace std; vector<int> myIntVector; vector<int>::iterator myIntVectorIterator; // Add some elements to myIntVector myIntVector.push_back(1); myIntVector.push_back(4); myIntVector.push_back(8); for(myIntVectorIterator = myIntVector.begin(); ...
Использование CMake для создания файлов проекта Visual Studio C++
Я работаю над проектом C++ с открытым исходным кодом, для кода, который компилируется в Linux и Windows. Я использую CMake для построения кода на Linux. Для простоты настройки разработки и политических причин я должен придерживаться файлов проекта Visual Studio / редактора в Windows (я не могу переключиться на Code:: Blocks, например). Я вижу инструкции по созданию файлов Visual Studio с помощью CMake, как здесь. вы использовали CMake для создания файлов Visual Studio раньше? Как это было ваш ...
Инициализация массива элементов в инициализаторе конструктора
class C { public: C() : arr({1,2,3}) //doesn't compile {} /* C() : arr{1,2,3} //doesn't compile either {} */ private: int arr[3]; }; Я считаю, что причина заключается в том, что массивы могут быть инициализированы только с = синтаксис, то есть: int arr[3] = {1,3,4}; вопросы как я могу сделать то, что я хочу сделать (что есть инициализации массив в a конструктор (не присваивая элементы в теле.)) Это вообще возможно? стандарт C++03 говорит что-нибудь особенное об инициализ ...
LPCSTR, LPCTSTR и LPTSTR
какая разница между LPCSTR,LPCTSTR и LPTSTR? почему мы должны сделать это, чтобы преобразовать строку в LV/_ITEM структура переменной pszText: LV_DISPINFO dispinfo; dispinfo.item.pszText = LPTSTR((LPCTSTR)string); ...
Необязательные параметры с макросами C++
есть ли способ получить дополнительные параметры с помощью макросов C++? Какая-то перегрузка тоже была бы хороша. ...
Печать правильного количества десятичных знаков с помощью cout
у меня есть список float значения, и я хочу, чтобы распечатать их с cout С 2 десятичными знаками. например: 10.900 should be printed as 10.90 1.000 should be printed as 1.00 122.345 should be printed as 122.34 как я могу это сделать? (setprecision не похоже, чтобы помочь в этом.) ...
Является ли цикл " for " на основе диапазона устаревшим для многих простых алгоритмов?
алгоритм решения: std::generate(numbers.begin(), numbers.end(), rand); Range-based for-loop solution: for (int& x : numbers) x = rand(); почему я хочу использовать более подробный std::generate на основе диапазона для циклов в C++11? ...
Как запустить конкретные тестовые случаи в GoogleTest
Я пытаюсь написать функцию / метод для моего проекта, который будет спрашивать пользователя, Какие все тестовые случаи вы собираетесь запустить? Это выглядит как ниже..., Test_Cases_1 |_TestNo1 |_TestNo2....so on Test_Cases_2 |_TestNo1 |_TestNo2....so on .... ....so on Test_Cases_N |_TestNo1 |_TestNo2....so on Итак, теперь проблема заключается в том, что при запуске проекта он должен подсказать мне, какие все тестовые случаи вы хотели бы в ...
Использование emit vs вызов сигнала, как если бы это была обычная функция в Qt
допустим, у меня есть такой сигнал: signals: void progressNotification(int progress); Я только недавно узнал о ключевом слове emit в Qt. До сих пор я выполнял сигналы, просто вызывая их как обычную функцию. Так что вместо: emit progressNotification(1000 * seconds); Я бы написал: progressNotification(1000 * seconds); вызов их таким образом, казалось, работал, и все связанные слоты выполнялись бы, так что использование ключевого слова emit вызывает другое поведение, или это просто син ...
Программа только как сборка - как отладить?
У меня здесь проблема типа" кошка Шредингера " - моя программа (на самом деле тестовый набор для моей программы, но тем не менее программа) сбой, но только при построении в режиме выпуска и только при запуске из командной строки. Через отладку caveman (т. е. неприятные сообщения printf () по всему месту) я определил метод тестирования, в котором происходит сбой кода, хотя, к сожалению, фактический сбой, похоже, происходит в каком-то деструкторе, так как последние сообщения трассировки, которые ...
Как объявить массив строк в C++?
Я пытаюсь перебрать все элементы статического массива строк в лучшем виде. Я хочу иметь возможность объявить его на одной строке и легко добавлять/удалять элементы из него без необходимости отслеживать номер. Звучит просто, не так ли? возможных решений: vector<string> v; v.push_back("abc"); b.push_back("xyz"); for(int i = 0; i < v.size(); i++) cout << v[i] << endl; проблемы - невозможно создать вектор на одной строке со списком строк возможно, решение 2: string l ...
изменчивость и изменчивость в C++
У меня есть вопрос о разнице между летучими и изменчивыми. Я заметил, что оба означает, что он может быть изменен. Что еще? Это одно и то же? Какая разница? Где они применяются? Почему эти две идеи? Как использовать их по-другому? Спасибо большое. ...
Почему функция-член const может изменять статический элемент данных?
в следующем C++ программа, модифицирующая a статический элемент данных С работает: class A { public: static int a; // static data member void set() const { a = 10; } }; но изменение a нестатический член данных С ...
Общий способ приведения int к перечислению в C++
есть ли общий способ бросить int до enum in C++? если int попадает в диапазон enum он должен возвратить enum значение, в противном случае бросьте exception. Есть ли способ написать это в общем? Более одного enum type должна быть поддержана. фон: у меня есть внешний перечисление тип и нет контроля над исходным кодом. Я хотел бы сохранить это значение в базе данных и извлекать оно. ...