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

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

16
вектор против списка в STL
Я заметил в Effective STL, что вектор - это тип последовательности, который должен использоваться по умолчанию. Что это значит? Кажется, что игнорировать эффективность vectorможет все что угодно. Может ли кто-нибудь предложить мне сценарий, в котором vectorвариант невозможен, но listдолжен использоваться?
239 c++  list  vector  stl 

10
Какое использование параметров шаблона шаблона?
Я видел несколько примеров C ++, использующих параметры шаблонов шаблонов (то есть шаблоны, которые принимают шаблоны в качестве параметров) для разработки классов на основе политик. Какие другие применения у этой техники?

3
Что такое «rvalue reference для * this»?
На странице статуса C ++ 11 в Clang наткнулся на предложение под названием «ссылка на rvalue для * this» . Я прочитал довольно много о ссылках на rvalue и понял их, но я не думаю, что знаю об этом. Я также не мог найти много ресурсов в Интернете, используя термины. …

17
Есть ли какое-либо использование для unique_ptr с массивом?
std::unique_ptr имеет поддержку массивов, например: std::unique_ptr<int[]> p(new int[10]); но нужно ли это? Вероятно, это более удобно для использования std::vectorили std::array. Нашли ли вы какую-либо пользу для этой конструкции?

2
Что такое «промежуток» и когда я должен его использовать?
Недавно я получил предложения использовать span<T>их в своем коде или увидел здесь некоторые ответы на сайте, которые используют span- предположительно, какой-то контейнер. Но - я не могу найти ничего подобного в стандартной библиотеке C ++ 17. Так что же это за таинственное span<T>и почему (или когда) стоит использовать его, если …

15
Почему моя программа не может скомпилироваться под Windows 7 на французском языке? [закрыто]
Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме переполнения стека. Закрыто 6 лет назад . Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет …

5
Как правильно перегрузить оператор << для ostream?
Я пишу небольшую матричную библиотеку на C ++ для матричных операций. Однако мой компилятор жалуется, где раньше этого не было. Этот код оставлялся на полке в течение 6 месяцев, и между тем я обновил свой компьютер с debian etch до lenny (g ++ (Debian 4.3.2-1.1) 4.3.2), однако у меня та …

21
Как лучше отключить предупреждение о неиспользуемых переменных?
У меня есть кроссплатформенное приложение, и в некоторых моих функциях используются не все значения, переданные функциям. Следовательно, я получаю предупреждение от GCC, говорящее мне, что есть неиспользуемые переменные. Что было бы лучшим способом кодирования вокруг предупреждения? #Ifdef вокруг функции? #ifdef _MSC_VER void ProcessOps::sendToExternalApp(QString sAppName, QString sImagePath, qreal qrLeft, qreal qrTop, …
237 c++  gcc  warnings  gcc-warning 

11
Что такое «единица перевода» в C ++
В то время я читал «Эффективный C ++», написанный Мейерсом и натолкнулся на термин «единица перевода». Может ли кто-нибудь дать мне объяснение: 1) Что именно это 2) Когда я должен рассмотреть возможность его использования при программировании на C ++ 3) Если он связан только с C ++ или может использоваться …
236 c++ 

26
Интервью: проверьте, является ли одна строка вращением другой строки [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …
235 java  c++  c 

1
std :: vector регрессия производительности при включении C ++ 11
Я обнаружил интересную регрессию производительности в небольшом фрагменте C ++ при включении C ++ 11: #include &lt;vector&gt; struct Item { int a; int b; }; int main() { const std::size_t num_items = 10000000; std::vector&lt;Item&gt; container; container.reserve(num_items); for (std::size_t i = 0; i &lt; num_items; ++i) { container.push_back(Item()); } return 0; …
235 c++  performance  gcc  c++11  vector 

8
Как мне установить библиотеки OpenSSL в Ubuntu?
Я пытаюсь построить некоторый код на Ubuntu 10.04 LTS, который использует OpenSSL 1.0.0. Когда я запускаю make, он вызывает g ++ с опцией "-lssl". Источник включает в себя: #include &lt;openssl/bio.h&gt; #include &lt;openssl/buffer.h&gt; #include &lt;openssl/des.h&gt; #include &lt;openssl/evp.h&gt; #include &lt;openssl/pem.h&gt; #include &lt;openssl/rsa.h&gt; Я побежал: $ sudo apt-get install openssl Reading package lists... …


27
Каковы некоторые лучшие способы избежать do-while (0); взломать в C ++?
Когда поток кода выглядит так: if(check()) { ... ... if(check()) { ... ... if(check()) { ... ... } } } Я обычно видел эту работу, чтобы избежать беспорядочного потока кода: do { if(!check()) break; ... ... if(!check()) break; ... ... if(!check()) break; ... ... } while(0); Какие есть лучшие способы …
233 c++  do-while 

5
Опасен ли уровень оптимизации -O3 в g ++?
Я слышал из разных источников (хотя в основном от моего коллеги), что компиляция с уровнем оптимизации -O3в g ++ как-то «опасна», и ее следует избегать в целом, если в этом нет необходимости. Это правда, и если да, то почему? Должен ли я просто придерживаться -O2?

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