Вопросы с тегом «c++»

103
Как использовать CMake?

Я пытаюсь использовать CMake для компиляции opencv. Я читаю руководство, но не могу понять, что такое файлы CMakeLists и как они связаны с графическим интерфейсом CMake? Также не мог понять, что такое make-файлы, они же CMakeLists? И что это за файл, который я открываю с помощью visual-studio?...

103
Сделайте программу работать медленно

Есть ли способ запустить программу на C ++ медленнее, изменив какие-либо параметры ОС в Linux? Таким образом, я хотел бы смоделировать, что произойдет, если эта конкретная программа будет работать на действительно более медленной машине. Другими словами, более быстрая машина должна вести себя как...

103
Почему vector <bool> не является контейнером STL?

В пункте 18 книги Скотта Мейерса « Эффективный STL: 50 конкретных способов улучшить использование стандартной библиотеки шаблонов» говорится, что следует избегать, vector <bool>поскольку это не контейнер STL и на самом деле не содержит bools. Следующий код: vector <bool> v; bool *pb...

103
Добавляет ли C ++ 14 новые ключевые слова в C ++?

Комитет по стандартам C ++ имеет тенденцию уклоняться от добавления новых ключевых слов в язык, однако с C ++ 11 этого не произошло. Некоторые примеры: constexpr decltype thread_local auto // New usage noexcept nullptr static_assert alignof alignas Есть ли в C ++ 14 новые ключевые...

103
Компилятор показывает символ «пи» при ошибке

Я тестировал код на Coliru и получил странный результат. Я просмотрел код и смог воспроизвести его с помощью этого простого фрагмента кода : int main() { &pi; } Вывод на g ++: лязг: Например, использование только pi(без адреса) показывает ожидаемый результат: main.cpp:3:5: error: 'pi' was not...

103
Преобразование изображения в ASCII-арт

Пролог Эта тема время от времени всплывает здесь, в Stack Overflow, но обычно удаляется из-за плохо написанного вопроса. Я видел много таких вопросов, а затем молчание со стороны OP (обычно низкая репутация), когда запрашивается дополнительная информация. Время от времени, если вводная информация...

103
Почему все используют стандартные типы C?

Если вы хотите использовать Qt , вы должны принять quint8, quint16и так далее. Если вы хотите использовать GLib , вы должны приветствовать guint8, guint16и так далее. В Linux есть u32, s16и так далее. УНЦ / OS определяет SINT32, UINT16и так далее. И если вам нужно использовать какую-то комбинацию...

103
Почему std :: set не имеет функции-члена «содержит»?

Я активно использую, std::set<int>и часто мне просто нужно проверить, содержит ли такой набор число или нет. Я считаю естественным написать: if (myset.contains(number)) ... Но из-за отсутствия containsчлена мне нужно написать громоздкое: if (myset.find(number) != myset.end()) .. или не такое...

103
Безопасно ли связывать объекты C ++ 17, C ++ 14 и C ++ 11

Предположим, у меня есть три скомпилированных объекта, созданных одним и тем же компилятором / версией : A был скомпилирован со стандартом C ++ 11 B был скомпилирован по стандарту C ++ 14 C был скомпилирован со стандартом C ++ 17 Для простоты предположим, что все заголовки были написаны на C ++ 11...

102
Поддержка Visual Studio новых стандартов C / C ++?

Я продолжаю читать о C99 и C ++ 11 и обо всех этих совершенно приятных вещах, которые добавляются к языковому стандарту и которые когда-нибудь могут быть полезны. Однако в настоящее время мы томимся в стране написания C ++ в Visual Studio. Будет ли когда-либо добавлено что-либо из нового стандарта...

102
строка c_str () vs. data ()

Я читал несколько мест, где разница между c_str()и data()(в STL и других реализациях) заключается в том, что c_str()всегда завершается нулем, а data()нет. Насколько я видел в реальных реализациях, они либо делают то же самое, либо data()вызывают c_str(). Что мне здесь не хватает? Какой из них...

102
Какой лучший способ сделать обратный цикл в C / C # / C ++?

Мне нужно вернуться назад по массиву, поэтому у меня есть такой код: for (int i = myArray.Length - 1; i >= 0; i--) { // Do something myArray[i] = 42; } Есть ли лучший способ сделать это? Обновление: я надеялся, что, возможно, в C # есть какой-то встроенный механизм для этого, например:...

102
Удаление элементов из вектора

Я хочу удалить элемент из вектора с помощью метода стирания. Но проблема здесь в том, что элемент не обязательно встречается в векторе только один раз. Он может присутствовать несколько раз, и мне нужно удалить их все. Мой код выглядит примерно так: void erase(std::vector<int>&...

102
C ++ получает время в миллисекундах в Linux - clock () не работает должным образом

В Windows clock()возвращает время в миллисекундах, но в этом Linux-устройстве, над которым я работаю, оно округляет его до ближайшей 1000, поэтому точность составляет только «второй» уровень, а не уровень миллисекунд. Я нашел решение с Qt, используя QTimeкласс, создавая экземпляр объекта и вызывая...

102
Статические поля наследуются?

Когда статические члены наследуются, являются ли они статическими для всей иерархии или только для этого класса, то есть: class SomeClass { public: SomeClass(){total++;} static int total; }; class SomeDerivedClass: public SomeClass { public: SomeDerivedClass(){total++;} }; int main() { SomeClass...

102
Запускать приложение в GDB до возникновения исключения

Я работаю над многопоточным приложением и хочу отлаживать его с помощью GDB. Проблема в том, что одна из моих тем продолжает умирать с сообщением: pure virtual method called terminate called without an active exception Abort Я знаю причину этого сообщения, но понятия не имею, где оно происходит в...

102
Является ли «argv [0] = имя исполняемого файла» принятым стандартом или просто общепринятым соглашением?

При передаче аргумента main()в приложение C или C ++ argv[0]всегда будет имя исполняемого файла? Или это просто обычное соглашение и не гарантируется, что оно будет верным в 100% случаев?...