Articles of stl

std :: потребление памяти в очереди приводит к утечке памяти – C ++?

Следующие коды не освободили память, потребляемую для 3000 элементов, даже после того, как я вытащил все элементы из очереди qInt. Какова причина ? std::queue qInt; //Step01: Check the running memory for (int i=0;i<3000;i++) { qInt.push(i); } //Step02: Check the running memory it should have been increased while(!qInt.empty()) { qInt.pop(); } //Step03: Check the running memory […]

Как инициализировать std :: set compator?

Мне нужно инициализировать некоторый компаратор нового типа данных TType на основе std :: set с некоторым объектом o другого classа Object: typedef std::set TType Это объявление относится к classу (в заголовочном файле). Во время объявления этот объект не должен существовать, он будет создан позже. class sortSet { private: Object o; public: sortSet(Object &oo): o(oo) {} […]

Найти последний элемент в std :: vector, который удовлетворяет условию

У меня есть это требование, чтобы найти последний элемент в векторе, который меньше значения. Как find_first_of, но вместо первого я хочу последний. Я искал и обнаружил, что нет find_last_of, но есть find_first_of. Почему это так? Является ли стандартный способ использовать find_first_of с помощью обратных iteratorов?

C ++ Абстракция действия командной строки с использованием интерфейса

Я создаю приложение, использование которого будет выглядеть примерно так: application –command –option1=? –option2=2? В принципе, может быть любое количество опций, но только одна команда на экземпляр приложения. Подобно тому, как работает git. Теперь я подумал, что напишу его на C ++, чтобы получить некоторый импульс и опыт работы с STL, и у меня есть несколько […]

Как отсортировать вектор по отношению к другому вектору?

У меня мало векторов с тем же типом данных, что и у. v = {5,4,1,2} v2 = {2,4,3,5,1,6,8,7} v3 = {1,4,2,3} Существует любой способ отсортировать вектор v2, v3 … по вектору v, using STL of C++(algorithm) так что после сортировки v2 будет {5,4,1,2,3,6,7,8}, когда он будет отсортирован относительно v и v3, будет {4,1,2,3}, когда он […]

boost multi_index_container и медленный оператор ++

Это вопрос о последующих мерах по этому вопросу MIC . При добавлении элементов в вектор ссылочных оберток я провожу около 80% времени внутри оператора ++, независимо от того, какой из вариантов выбора я выбираю. Запрос работает следующим образом VersionView getVersionData(int subdeliveryGroupId, int retargetingId, const std::wstring &flightName) const { VersionView versions; for (auto i = 0; […]

Элемент вставки контейнера STL

Я искал std::set code. Я вижу _Pairib insert(const value_type& _Val) подпись как _Pairib insert(const value_type& _Val) . Почему входной параметр передается по ссылке? Я знаю, что standardcContainers копирует свои элементы в память контейнера. Кто-нибудь знает, как это достигается? Где распределители вводят изображение? Любой небольшой код / ​​псевдокод, который объясняет, как элементы хранятся / вставлены, будет […]

Имеются ли последствия для записи в нераспечатанный stream?

Если у меня есть это: std::ofstream empty; for(int i = 0; i < 99999; ++i) { empty << "Nothing…" << std::endl; } Будет ли это когда-либо вызывать исключение из памяти или какие-либо другие проблемы, так как stream получает данные, но он никуда не денется? Спасибо

std :: stringstream странное поведение

Некоторая справочная информация, для задания домашней работы, мне пришлось написать калькулятор латинских обозначений с использованием двоичных деревьев, для этого мне пришлось проанализировать ввод строки в командной строке, чтобы он правильно построил двоичное дерево, а затем перешел к нему, чтобы дать правильный ответ к введенному математическому выражению. Для синтаксического анализа я использовал std :: stringstream, чтобы […]

Как обновить набор указателей c ++?

Мне нужна группа объектов TVertex, чтобы иметь доступ к их сортировкам по различным параметрам (id и flow). Найти k-й элемент в O (1) раз и обновить их свойства в o (log2 (N)) времени. Для этого я использую classы TComparatorF и TComparatorI. Оба они имеют указатель на TVertex и операторы> и < TComparatorF сравнивает streamи TComparatorI […]

Intereting Posts
Пространства имен и статические classы Чтение двоичного байта istream by byte Изменение частей скомпилированных двоичных файлов C ++ Переслать декларацию classа c ++ 0x: перегрузка по lambda-арити C ++ не может установить ссылку на дескриптор на родительский объект – круговые включения или неопределенные ошибки типа Как вызвать функцию-член только в том случае, если объект имеет его? Почему нам нужно сначала поместить const в конец заголовка функции, но статически? Почему бит std :: bitset в обратном порядке? Использование дескрипторов OpenCV с findFundamentalMat В C ++ инициализируйте член classа с помощью этого «указателя» во время построения Пропуск в диапазоне на основе «индекса»? получение даты и времени компиляции без макросов пространства имен, classы и бесплатные функции – когда вам нужны полные имена Вывод шаблона указателя-указателя C ++ не компилируется при таргетинге на x86, но работает с x64