Вопросы
Неопределенная ссылка на виртуальную таблицу (vtable)
Когда я пытаюсь собрать свою программу на C++, я получаю сообщение об ошибке:
undefined reference to 'vtable...
В чем причина этой проблемы? Как мне это исправить?
К сожалению, я сталкиваюсь с этой ошибкой в следующем коде (класс, о котором идет речь — CGameModule), и никак не могу...
Как очистить переменную stringstream?
Я уже пробовал несколько вариантов,
std::stringstream m; m.empty(); m.clear();
но ни один из них не сработал.
Преимущества использования map над unordered_map при тривиальных ключах?
Недавняя лекция о unordered_map в C++ заставила меня задуматься о том, что в большинстве случаев, где я раньше использовал map, теперь следует использовать unordered_map из-за большей эффективности поиска (амортизированное O(1) против O(log n)). Обычно, когда я использую map, в качестве типа ключа...
Разница между использованием Makefile и CMake для компиляции кода?
Вопрос о различиях между Makefile и CMake для компиляции кода
Я пишу код на C/C++ и использую (GNU) Makefile для компиляции. У меня есть возможность использовать CMake для генерации Makefile. Однако меня интересует, в чем разница между использованием Makefile и CMake при компиляции кода?
Отладка против Релиза в CMake
Проблема компиляции проекта на GCC с использованием CMake
В своем проекте, скомпилированном с помощью GCC, я столкнулся с несколькими вопросами, связанными с использованием CMake:
- Как запустить CMake для каждого типа сборки (debug/release)?
- Как задать флаги компиляции для отладочной и...
Ошибка: запрос члена '..' в '..', который имеет не классный тип
У меня есть класс с двумя конструкторами: один без параметров и один с одним параметром.
Создание объектов с использованием конструктора, который принимает один параметр, работает как ожидалось. Однако, когда я пытаюсь создать объекты с использованием конструктора без параметров, возникает...
Определение typedef для указателя на функцию?
Я изучаю, как динамически загружать DLL, но не могу понять следующую строку кода:
typedef void (*FunctionFunc)();
У меня есть несколько вопросов. Буду признателен, если кто-то сможет на них ответить.
- Зачем используется
typedef
? - Синтаксис выглядит странно; после
void
не должно...
`unsigned int` против `size_t`: когда и что использовать?
Я заметил, что в современном C и C++ коде вместо int и unsigned int почти повсеместно используется size_t - от параметров для функций работы с C-строками до STL. МнеCurious, почему так происходит и какие преимущества это дает.
Инициализация статической std::map<int, int> в C++
Как правильно инициализировать статическую карту? Нужно ли для этого создавать статическую функцию, которая будет её инициализировать?
В каких случаях использовать malloc и/или new?
Я вижу, что в C++ существует несколько способов выделения и освобождения памяти, и я понимаю, что при вызове malloc
необходимо вызывать free
, а при использовании оператора new
следует использовать delete
. Также я знаю, что смешивать эти два подхода (например, вызывать free()
для объекта,...
Основные цели std::forward и решаемые им проблемы
Описание проблемы:
Я изучаю концепцию идеальной передачи (perfect forwarding) в C++ и столкнулся с вопросом о том, как работает функция std::forward
. В приведенном ниже коде std::forward
используется для преобразования именованных rvalue-ссылок t1
и t2
в безымянные...
Отладка с параметрами командной строки в Visual Studio
Я разрабатываю командную консольное приложение на C++ в Visual Studio и мне нужно отлаживать его с аргументами командной строки. В данный момент я просто запускаю сгенерированный EXE-файл с необходимыми аргументами (например, program.exe -file.txt), но таким образом я не могу выполнять отладку....
Почему нужны заголовочные файлы и .cpp файлы? [закрыто]
Описание проблемы: Почему в C++ существуют файлы заголовков и файлы .cpp?
Здравствуйте! Я столкнулся с вопросом, касающимся структуры файлов в C++. Меня интересует, зачем в этом языке программирования используются как файлы заголовков (.h или .hpp), так и файлы с исходным кодом (.cpp)? Какова...
Вызов C/C++ из Python? [закрыто]
Проблема: Поиск метода для создания Python-обертки для библиотеки C/C++
Здравствуйте!
Я пытаюсь создать обертку для библиотеки на C или C++, чтобы использовать её в своем проекте на Python. Мне нужно быстрое решение, и я работаю в среде Windows.
Какой самый простой и быстрый способ создать...
Программно определить количество ядер на машине
Существует ли способ определить количество ядер у машины с помощью C/C++ в независимом от платформы формате? Если такого способа не существует, можно ли узнать это отдельно для каждой платформы (Windows/*nix/Mac)?
Как написать многострочную строку в языке программирования?
Заголовок: Многострочные литералы в C++ как в Perl
Тело вопроса:
Есть ли способ задать многострочные текстовые литералы в C++, аналогично тому, как это делается в Perl? Возможно, существует какой-то прием с #include
, который позволяет включить файл?
Я знаю, что начиная с C++11 можно...
Когда использовать extern в C++?
Я читаю книгу "Think in C++", и в ней только что была введена декларация extern. Например:
extern int x; extern float y;
Я думаю, что понимаю значение (декларация без определения), но меня интересует, когда это оказывается полезным.
Может кто-нибудь привести пример?
Почему компиляция C++ так долго занимает время? [закрыто]
Проблема с долгим временем компиляции C++
Компиляция C++ файлов занимает значительно больше времени по сравнению с C# и Java. Например, компиляция обычного C++ файла занимает гораздо больше времени, чем выполнение стандартного скрипта Python. Я использую VC++, но та же проблема наблюдается и...
Что такое `unsigned char`?
Проблема: Использование unsigned char
в C/C++
В C/C++ существует тип данных unsigned char
, который часто вызывает вопросы у разработчиков. В частности, возникает необходимость понять, для чего он используется и чем он отличается от обычного char
.
С одной стороны, char
может быть...
Каковы преимущества std::distance по сравнению с вычитанием итераторов?
Я итерируюсь по вектору и мне нужен индекс, на который указывает итератор. Какие достоинства и недостатки у следующих методов?
it - vec.begin() std::distance(vec.begin(), it)