Результаты поиска по запросу "stl"
Код, который я использовал, основан на @ antonakos's:
сно сэта страница [http://www.cplusplus.com/reference/stl/set/insert/], Я могу добиться постоянной вставки времени, если я использую iterator std::set::insert ( iterator position, const value_type& x );иposition Предоставляемый итератор напрямую ...
на несортированных данных, и на самом деле гораздо хуже на отсортированных данных.
таю, что стандарт C ++ дляstd::sort [http://en.cppreference.com/w/cpp/algorithm/sort]не гарантирует производительность O (n) в списке, который уже отсортирован. Но все же мне интересно, насколько вам известно, какие реализации STL (GCC, MSVC и т. ...
Контейнер карты на самом деле будет хранить все элементы в порядке, указанном в этом порядке, и именно так вы можете достичь O (log n) времени поиска и вставки по значению ключа.
у отобразить объекты одного класса на объекты другого. Класс, который я хочу использовать в качестве ключа, однако, не был написан мной и является простымstruct с несколькими значениями. std :: map упорядочивает его содержимое, и мне было ...
Я думаю, что совет Страуструпа действительно предназначен только для начинающих, а не для того, чтобы запутывать их еще больше (то есть для людей типа «начало семестров»). Я думаю, что в любом производственном коде (и в последующих лекциях) нужно учить использовать std :: size_t.
учаю следующее предупреждение всегда для следующего типа кода. std::vector v; for ( int i = 0; i < v.size(); i++) { }warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data Я это понимаюsize() ...
http://www.sgi.com/tech/stl/RandomNumberGenerator.html
тся ли std :: random_shuffle потокобезопасным? Я полагаю, нет, так как обычный rand () не является потокобезопасным. Если это так, как бы я использовал rand_r с random_shuffle, чтобы дать каждому потоку уникальное начальное число. Я видел примеры ...
это действительно не решает никаких проблем. Для возможности вызова ftell / fseek требуется поддержка 64-битного смещения; для этого используйте stdio_sync_filebuf, но это зависит от определения _GLIBCXX_USE_LFS
аюсь найти точный ответ и не могу, поэтому я надеюсь, что кто-то может знать. Я занимаюсь разработкой приложения на C ++ с использованием GCC 4.x в Linux (32-битная ОС). Это приложение должно уметь читать файлы размером> 2 ГБ. Я действительно ...
Если вы хотите использовать элементы контейнера для изменения элементов каким-либо системным образом или использовать их в задаче, которая каким-либо образом изменит их, используйте std :: transform. "
ько что прочитал в стандарте C ++, чтоstd::for_each это немодифицирующая последовательность операций, наряду сfind, search и так далее. Означает ли это, что функция, применяемая к каждому элементу, не должна их изменять? Почему это? Что возможно ...
(который, в конце концов, упорядочен), проблема в том, что это займет больше, чем постоянная сложность
вык писать такие циклы: for (std::size_t index = 0; index < foo.size(); index++) { // Do stuff with foo[index]. }Но когда я вижу циклы итераторов в чужом коде, они выглядят так: for (Foo::Iterator iterator = foo.begin(); iterator != foo.end(); ...
правда, но опять же вы сталкиваетесь с такими проблемами, когда имеете дело с плавающей точкой. Но в моем случае я могу указать разумный эпсилон. К счастью, я не хочу реализовывать контейнер с произвольным интервалом точности :-) Как вы заметили, тогда все станет сложнее.
ющий код должен найти ключ3.0вstd::map который существует. Но из-за точности с плавающей запятой это не будет найдено. map<double, double> mymap; mymap[3.0] = 1.0; double t = 0.0; for(int i = 0; i < 31; i++) { t += 0.1; bool contains = ...
Вы будете иметь свое собственное мнение о мудрости принятия бросков в / из
надеюсь) мы все знаем,vector<bool> полностью сломан и не может рассматриваться как массив c. Каков наилучший способ получить эту функциональность? До сих пор я думал о следующих идеях: Использоватьvector<char> вместо илиИспользуйте ...