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

C ++ - это язык программирования общего назначения. Первоначально он был разработан как расширение C и имеет аналогичный синтаксис, но теперь это совершенно другой язык. Используйте этот тег для вопросов о коде (который будет скомпилирован с помощью компилятора C ++). Используйте тег, зависящий от версии, для вопросов, связанных с конкретной редакцией стандарта [C ++ 11], [C ++ 14], [C ++ 17] или [C ++ 20] и т. Д.

15
std :: string для float или double
Я пытаюсь преобразовать std::stringв float/double. Я попытался: std::string num = "0.6"; double temp = (double)atof(num.c_str()); Но всегда возвращает ноль. Любые другие способы?
98 c++ 


11
Есть ли лучший способ выразить вложенные пространства имен в C ++ в заголовке
Я переключился с C ++ на Java и C # и думаю, что использование пространств имен / пакетов там намного лучше (хорошо структурировано). Затем я вернулся к C ++ и попытался использовать пространства имен таким же образом, но требуемый синтаксис в заголовочном файле ужасен. namespace MyCompany { namespace MyModule { …
98 c++  syntax  namespaces 

9
Как выполнить печать в окне вывода отладки в приложении Win32?
У меня есть проект win32, который я загрузил в Visual Studio 2005. Я хотел бы иметь возможность печатать что-либо в окне вывода Visual Studio, но я не могу понять, как это сделать. Я пытался «Printf» и «<<» COUT но мои сообщения остаются упорно без надписей. Есть ли какой-то особый способ …

3
Что означает очистка буфера?
Я изучаю C ++ и обнаружил то, чего не могу понять: Буферы вывода могут быть явно очищены для принудительной записи буфера. По умолчанию чтение cinсбрасывается cout; coutтакже сбрасывается при нормальном завершении программы. Итак, очистка буфера (например, буфера вывода): очищает ли это буфер, удаляя все в нем, или он очищает буфер, …
98 c++  input  buffer  output  flush 

8
initializer_list и семантика перемещения
Могу ли я перемещать элементы из std::initializer_list<T>? #include <initializer_list> #include <utility> template<typename T> void foo(std::initializer_list<T> list) { for (auto it = list.begin(); it != list.end(); ++it) { bar(std::move(*it)); // kosher? } } Поскольку std::intializer_list<T>требует особого внимания компилятора и не имеет семантики значений, как обычные контейнеры стандартной библиотеки C ++, я …

1
Инициализация члена при использовании делегированного конструктора
Я начал пробовать стандарт C ++ 11 и нашел этот вопрос, который описывает, как вызвать ваш ctor из другого ctor в том же классе, чтобы избежать использования метода инициализации и т.п. Теперь я пробую то же самое с кодом, который выглядит следующим образом: hpp: class Tokenizer { public: Tokenizer(); Tokenizer(std::stringstream …

28
Программа вылетает только при сборке релиза - как отлаживать?
У меня здесь проблема типа «Кот Шредингера» - моя программа (на самом деле набор тестов для моей программы, но, тем не менее, программа) дает сбой, но только при сборке в режиме выпуска и только при запуске из командной строки . Посредством отладки пещерного человека (т.е. повсюду неприятных сообщений printf ()) …
98 c++  debugging 

4
экспериментальная :: ошибка компоновщика файловой системы
Я пытаюсь использовать новые функции C ++ 1z, фактически, в рамках разработки в рамках gcc 6.0. Если я попробую этот небольшой пример: #include <iostream> #include <experimental/filesystem> namespace fs = std::experimental::filesystem; int main() { fs::path p1 = "/home/pete/checkit"; std::cout << "p1 = " << p1 << std::endl; } Я получил: / …
98 c++  gcc  c++17 


4
Какой заголовок я должен включить для size_t?
Согласно cppreference.com size_t определяется в нескольких заголовках, а именно <cstddef> <cstdio> <cstring> <ctime> И, начиная с C ++ 11, также в <cstdlib> <cwchar> Прежде всего мне интересно, почему это так. Разве это не противоречит принципу DRY ? Однако у меня вопрос: Какой из вышеперечисленных заголовков я должен включить, чтобы использовать …
98 c++  typedef 

2
std :: back_inserter для std :: set?
Думаю, это простой вопрос. Мне нужно сделать что-то вроде этого: std::set<int> s1, s2; s1 = getAnExcitingSet(); std::transform(s1.begin(), s1.end(), std::back_inserter(s2), ExcitingUnaryFunctor()); Конечно, std::back_inserterне работает, раз нет push_back. std::inserterтоже нужен итератор? Я не использовал, std::inserterпоэтому не знаю, что делать. Есть у кого-нибудь идеи? Конечно, мой другой вариант - использовать вектор для s2, …
98 c++  algorithm  stl 

6
Как мне скомпилировать C ++ с Clang?
Я установил Clang с помощью apt-get в Ubuntu, и я могу успешно компилировать файлы C, используя его. Однако я понятия не имею, как через него скомпилировать C ++. Что мне нужно сделать для компиляции C ++?
98 c++  clang 

6
Современный способ фильтровать контейнер STL?
Возвращаясь к C ++ после многих лет работы с C #, мне было интересно, каким будет современный - читайте: C ++ 11 - способ фильтрации массива, то есть как мы можем достичь чего-то похожего на этот запрос Linq: var filteredElements = elements.Where(elm => elm.filterProperty == true); Чтобы отфильтровать вектор элементов …
98 c++  c++11  stl 

9
Не удается найти Dumpbin.exe
Я не вижу dumpbin.exe в моей системе. В моей системе установлена ​​Visual Studio 2005. Когда я набираю dumpbin в командной строке, появляется неузнаваемая команда. Поставляется ли он с Visual Studio по умолчанию, или мне нужно явно добавить этот инструмент?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.