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

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

5
Есть ли декомпилятор C ++? [закрыто]
Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме Stack Overflow. Закрыт 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, чтобы создать программу для трех разных компиляторов. На этом, наверное, заканчиваются все мои познания в CMake. Теперь моя проблема в том, что у меня есть исходный код, папку с которым …
116 c++  build  makefile  cmake  output 

5
Почему я не могу инициализировать неконстантный статический член или статический массив в классе?
Почему я не могу инициализировать неконстантный staticчлен или staticмассив в классе? class A { static const int a = 3; static int b = 3; static const int c[2] = { 1, 2 }; static int d[2] = { 1, 2 }; }; int main() { A a; return 0; …
116 c++  static  const 

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


4
В C ++, если throw является выражением, каков его тип?
Я заметил это в одном из своих кратких набегов на Reddit: http://www.smallshire.org.uk/sufficientlysmall/2009/07/31/in-c-throw-is-an-expression/ В основном автор указывает, что в C ++: throw "error" это выражение. На самом деле это довольно четко прописано в стандарте C ++ как в основном тексте, так и в грамматике. Однако не совсем ясно (по крайней мере, …
115 c++  throw 

7
Как построить std :: string из std :: vector <char>?
Если не считать (очевидного) сначала создания строки в стиле C, а затем ее использования для создания std :: string, есть ли более быстрый / альтернативный / «лучший» способ инициализировать строку из вектора символов?
115 c++ 

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 will copy …

4
Как определить платформу / компилятор из макросов препроцессора?
Я пишу кросс-платформенный код, который должен компилироваться в Linux, Windows, Mac OS. В Windows я должен поддерживать Visual Studio и Mingw. Есть некоторые фрагменты кода для конкретной платформы, которые я должен поместить в #ifdef .. #endifсреду. Например, здесь я разместил специальный код для Win32: #ifdef WIN32 #include &lt;windows.h&gt; #endif Но …


6
Максимальный размер стека программы C / C ++
Я хочу сделать DFS на массиве 100 X 100. (Скажем, элементы массива представляют собой узлы графа). Таким образом, в худшем случае глубина рекурсивных вызовов функций может доходить до 10000, причем каждый вызов может занимать до 20 байт. Так возможно ли это, есть ли возможность переполнения стека? Каков максимальный размер стека …
115 c++  c  stack 

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