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

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

8
Как инициализировать память новым оператором в C ++?
Я только начинаю изучать C ++ и хочу приобрести хорошие привычки. Если я только что выделил массив типа intс newоператором, как я могу инициализировать их все в 0, не просматривая их все самостоятельно? Должен ли я просто использовать memset? Есть ли «С ++» способ сделать это?

9
Чистая виртуальная функция с реализацией
Мое основное понимание состоит в том, что для чисто виртуальной функции нет реализации, однако мне сказали, что может быть реализация для чисто виртуальной функции. class A { public: virtual void f() = 0; }; void A::f() { cout<<"Test"<<endl; } Код выше ОК? Какова цель сделать его чисто виртуальной функцией с …
176 c++  pure-virtual 

6
Clang против GCC для моего проекта по разработке Linux
Я учусь в колледже, и для проекта, в котором мы используем C. Мы изучили GCC и Clang, и Clang выглядит гораздо более удобным для пользователя, чем GCC. В результате мне интересно, каковы преимущества или недостатки использования clang, в отличие от GCC, для разработки на C и C ++ в Linux? …
175 c++  c  linux  gcc  clang 

9
Как работает оператор запятой
Как работает оператор запятой в C ++? Например, если я делаю: a = b, c; В конечном итоге равен b или c? (Да, я знаю, что это легко проверить - просто документируйте здесь, чтобы кто-то быстро нашел ответ.) Обновление: этот вопрос выявил нюанс при использовании оператора запятой. Просто документировать это: …

13
Как добавить символ в std :: string?
Следующее не удается с ошибкой prog.cpp:5:13: error: invalid conversion from ‘char’ to ‘const char*’ int main() { char d = 'd'; std::string y("Hello worl"); y.append(d); // Line 5 - this fails std::cout << y; return 0; } Я также попробовал следующее, которое компилируется, но ведет себя случайным образом во время …
175 c++  string 

11
Инструмент для отслеживания зависимостей #include [закрыто]
Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме переполнения стека. Закрыто 6 лет назад . Улучшить этот вопрос Есть хорошие предложения? На входе будет указано имя заголовочного файла, а на выходе …
175 c++  c  header 


5
Значение ios_base :: sync_with_stdio (false); cin.tie (NULL);
Какое значение имеет включение ios_base::sync_with_stdio(false); cin.tie(NULL); в программах на C ++? В моих тестах это ускоряет время выполнения, но есть ли тестовый пример, о котором я должен беспокоиться, включив его? Всегда ли 2 утверждения должны быть вместе, или первого достаточно, т. Е. Игнорировать cin.tie(NULL)? Кроме того, допустимо ли использовать одновременно …
175 c++  c 


12
Не нужна ли точка с запятой (';') после объявления функции в C ++?
Я только недавно сдал промежуточный тест по программированию, и один из вопросов, который я ошибся, был следующим: Точка с запятой (';') не требуется после объявления функции. Правда или ложь. Я выбрал «false» (и, пожалуйста, исправьте меня, если я ошибаюсь, потому что я чувствую, что схожу с ума), объявление функции - …

6
Как инициализировать std :: vector из массива в стиле C?
Какой самый дешевый способ инициализации std::vectorиз массива в стиле C? Пример: в следующем классе у меня есть vector, но из-за внешних ограничений данные будут переданы в виде массива в стиле C: class Foo { std::vector<double> w_; public: void set_data(double* w, int len){ // how to cheaply initialize the std::vector? } …
174 c++  arrays  vector  stl 

8
Компиляция с g ++ с использованием нескольких ядер
Быстрый вопрос: что такое флаг компилятора, позволяющий g ++ порождать несколько экземпляров самого себя, чтобы быстрее компилировать большие проекты (например, 4 исходных файла за один раз для многоядерного процессора)?

6
Что означает «L» перед строкой в ​​C ++?
this->textBox1->Name = L"textBox1"; Хотя кажется, что работает без L, какова цель префикса? То, как оно используется, даже не имеет смысла для хардкорного программиста на Си.
174 c++ 

16
Захватывать символы со стандартного ввода, не дожидаясь нажатия клавиши ввода
Я никогда не могу вспомнить, как я это делаю, потому что это случается так редко для меня. Но в C или C ++, как лучше всего читать символ из стандартного ввода, не дожидаясь перевода строки (нажмите ввод). Также в идеале это не будет отображать вводимый символ на экране. Я просто …
174 c++  c  inputstream 

3
Что такое std :: atomic?
Я понимаю, что std::atomic<>это атомный объект. Но в какой степени? Насколько я понимаю, операция может быть атомарной. Что именно означает сделать объект атомарным? Например, если два потока одновременно выполняют следующий код: a = a + 12; Тогда вся операция (скажем add_twelve_to(int)) атомная? Или внесены изменения в переменную atomic (так operator=())?

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