c++

Как сделать паузу Visual Studio после выполнения консольного приложения в режиме отладки?

У меня есть коллекция модульных тестов Boost, которые я хочу запустить как консольное приложение. когда я работаю над проектом и запускаю тесты, я хотел бы иметь возможность отлаживать тесты, и я хотел бы, чтобы консоль оставалась открытой после зап ...

Как новый цикл for на основе диапазона в C++17 помогает диапазонам TS?

комитет изменил диапазон на основе цикла for от: C++11: { auto && __range = range_expression ; for (auto __begin = begin_expr, __end = end_expr; __begin != __end; ++__begin) { range_declaration = *__begin; ...

Инициализация двумерного 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_NUM ...

Каково время жизни лямбда-выражения C++?

(Я читал, что такое время жизни лямбда-производных неявных функторов в C++? уже и он не отвечает на этот вопрос.) Я понимаю, что синтаксис лямбда-кода C++ - это просто сахар для создания экземпляра анонимного класса с оператором вызова и некоторым с ...

C++ геттеры / сеттеры стиль кодирования

Я некоторое время программировал на C#, и теперь я хочу освежить свои навыки C++. имея класс: class Foo { const std::string& name_; ... }; что было бы лучшим подходом (я только хочу разрешить доступ для чтения к полю name_): исполь ...

Qt "private slots:" что это такое?

Я понимаю, как его использовать, но синтаксис меня беспокоит. Что такое" частные слоты: "делать? Я никогда не видел что-то между ключевым словом private и : в определении класса раньше. Есть ли здесь какая-то причудливая магия C++? и вот пример: ...

Почему конструкция std:: optional дороже, чем std:: pair?

рассмотрим эти два подхода, которые могут представлять собой " необязательный int": using std_optional_int = std::optional<int>; using my_optional_int = std::pair<int, bool>; учитывая эти две функции... auto get_std_optional_int() -&g ...

Разница между std:: reference wrapper и простым указателем?

зачем нужно иметь std::reference_wrapper? Где его следует использовать? Чем он отличается от простого указателя? Как его производительность сравнивается с простым указателем? ...

Внутренние классы в C++ автоматически друзей?

Если я определяю внутренний класс В C++, это автоматически друг из класса, который его содержит? Например, это законно: class Outer { public: class Inner { public: void mutateOuter(Outer& o); }; private: int value; }; ...

Как получить библиотеку GL / заголовки?

#include <gl\gl.h> #include <gl\glu.h> #include <gl\glaux.h> Это пример, но где взять заголовки GL? ...

Как использовать приоритетную очередь STL для объектов?

class Person { public: int age; }; Я хочу, чтобы хранить объекты класса Person в приоритетной очереди. priority_queue< Person, vector<Person>, ??? > Я думаю, что мне нужно определить класс для сравнения вещи, но я не уверен в это ...

Почему мы не можем объявить std:: vector?

Потратив довольно много времени на разработку в C#, я заметил, что если вы объявляете абстрактный класс с целью использования его в качестве интерфейса, вы не можете создать вектор этого абстрактного класса для хранения экземпляров дочерних классов. ...

Каков самый быстрый способ транспонировать матрицу в C++?

у меня есть матрица (относительно большая), которую мне нужно транспонировать. Например, предположим, что моя матрица a b c d e f g h i j k l m n o p q r Я хочу, чтобы результат был следующим: a g m b h n c I o d j p e k q f l r какой самый бы ...

Почему в Java нет конструктора копирования?

Почему Java не поддерживает конструктор копирования, как в C++? ...

эффективный потокобезопасный синглтон в C++

обычный шаблон для одноэлементного класса-это что-то вроде static Foo &getInst() { static Foo *inst = NULL; if(inst == NULL) inst = new Foo(...); return *inst; } однако я понимаю, что это решение не является потокобезопасным, пос ...

Получить имя файла из пути

какой самый простой способ получить имя файла из пути? string filename = "C:\MyDirectory\MyFile.bat" в этом примере я должен получить "MyFile". без расширения. ...

Где находится замок для std:: atomic?

если структура данных содержит несколько элементов, атомарная версия не может (всегда) быть без блокировки. Мне сказали, что это верно для больших типов, потому что процессор не может атомарно изменить данные без использования какой-то блокировки. ...

C++: сравнение двух векторов

есть ли способ сравнить два вектора? if (vector1 == vector2) DoSomething(); Примечание: в настоящее время, эти векторы не отсортированы и содержат целые значения. ...

Какие требования должны соответствовать классам ключей std::map, чтобы быть действительными ключами?

Я хочу сопоставить объекты данного класса с объектами другого. Класс, который я хочу использовать в качестве ключа, однако, не был написан мной и является простым struct с несколькими значениями. std:: map orders это содержимое, и мне было интересно, ...

Что произойдет, если я присвою отрицательное значение беззнаковой переменной?

мне было любопытно узнать, что произойдет, если я присвою отрицательное значение беззнаковой переменной. код будет выглядеть так. unsigned int nVal = 0; nVal = -5; это не дало мне никакой ошибки компилятора. Когда я запустил программу nVal было п ...