Запитання з тегом «c++»

C ++ - мова програмування загального призначення. Спочатку він був розроблений як розширення до C і має подібний синтаксис, але зараз це зовсім інша мова. Використовуйте цей тег для запитань про код (який потрібно) зібрати за допомогою компілятора C ++. Використовуйте тег, що стосується версії, для питань, пов’язаних із конкретною стандартною редакцією [C ++ 11], [C ++ 14], [C ++ 17] або [C ++ 20] тощо.


5
Чи є декомпілятор C ++? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 3 роки тому . Удосконаліть це питання У мене є програма, в якій я втратив вихідний код C ++. Чи є якісь …

8
Ініціалізація двовимірного std :: vector
Отже, у мене є таке: std::vector< std::vector <int> > fog; і я ініціалізую це дуже наївно, як: for(int i=0; i<A_NUMBER; i++) { std::vector <int> fogRow; for(int j=0; j<OTHER_NUMBER; j++) { fogRow.push_back( 0 ); } fog.push_back(fogRow); } І почувається дуже неправильно ... Чи існує інший спосіб ініціалізації такого вектора?
116 c++  vector 

4
Різниця між `const shared_ptr <T>` та `shared_ptr <const T>`?
Я пишу метод аксесуара для спільного вказівника на C ++, який виглядає приблизно так: class Foo { public: return_type getBar() const { return m_bar; } private: boost::shared_ptr&lt;Bar&gt; m_bar; } Отже, для підтримки константності getBar()повернення типу повинно бути таке, boost::shared_ptrщо не дозволяє модифікувати Barйого, на які вказує. Я здогадуюсь , що …
116 c++  boost  const  shared-ptr 

5
Каталог виводу / складання CMake
Я досить новачок у CMake, і прочитав кілька навчальних посібників, як ним користуватися, і написав кілька складних 50 рядків сценарію CMake, щоб зробити програму для 3-х різних компіляторів. Це, мабуть, завершує всі мої знання в CMake. Тепер моя проблема полягає в тому, що у мене є якийсь вихідний код, папку …
116 c++  build  makefile  cmake  output 


25
Найчастіше використовувані частини Boost [закрито]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …
115 c++  boost 

4
Як перевантажити std :: swap ()
std::swap()використовується багатьма контейнерами std (наприклад, std::listта std::vector) під час сортування та рівномірного призначення. Але реалізація std swap()дуже узагальнена і досить неефективна для користувацьких типів. Таким чином, ефективність може бути досягнута шляхом перевантаження std::swap()за допомогою конкретного типу. Але як це можна реалізувати, щоб його використовували контейнери std?


4
У C ++, якщо кидок - це вираз, який його тип?
Я взяв це в одному з моїх коротких наборів до reddit: http://www.smallshire.org.uk/sufficsmall/2009/07/31/in-c-throw-is-an-expression/ В основному автор зазначає, що в C ++: throw "error" є виразом. Це насправді досить чітко прописано в стандарті C ++, як в основному тексті, так і в граматиці. Однак, що незрозуміло (мені щонайменше) - це тип виразу? …
115 c++  throw 


17
C ++ - передача посилань на std :: shared_ptr або boost :: shared_ptr
Якщо у мене є функція, з якою потрібно працювати з a shared_ptr, чи не було б більш ефективно передавати посилання на нього (щоб уникнути копіювання shared_ptrоб'єкта)? Які можливі погані побічні ефекти? Я передбачаю два можливі випадки: 1) всередині функції робиться копія аргументу, як у ClassA::take_copy_of_sp(boost::shared_ptr&lt;foo&gt; &amp;sp) { ... m_sp_member=sp; //This …

7
Як побудувати std :: string з std :: vector <char>?
За винятком (очевидного) побудови рядка стилю C спочатку, використовуючи це для створення std :: string, чи існує швидший / альтернативний / "кращий" спосіб ініціалізації рядка з вектора символів?
115 c++ 

4
Як визначити платформу / компілятор з препроцесорних макросів?
Я пишу код крос-платформи, який слід компілювати в Linux, Windows, Mac OS. У вікнах я повинен підтримувати візуальну студію та mingw. Є деякі фрагменти коду, що залежить від платформи, який я повинен розмістити в #ifdef .. #endifоточенні. Наприклад, тут я розмістив специфічний код win32: #ifdef WIN32 #include &lt;windows.h&gt; #endif Але …


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.