Tag: stl

«Правильный» способ хранения двоичных данных с помощью C ++ / STL

В общем, каков наилучший способ хранения двоичных данных на C ++? Параметры, насколько я могу судить, в значительной степени сводятся к использованию строк или векторных s. (Я опускаю возможность char * s и malloc (), так как я имею в виду конкретно C ++). Обычно я просто использую строку, однако я не уверен, есть ли […]

std :: transform () и toupper (), нет соответствующей функции

Я пробовал код из этого вопроса C ++ std :: transform () и toupper () .. почему это не удается? #include #include int main() { std::string s=”hello”; std::string out; std::transform(s.begin(), s.end(), std::back_inserter(out), std::toupper); std::cout << "hello in upper case: " << out << std::endl; } Теоретически это должно было работать, поскольку это один из примеров […]

Отсутствует заголовок C ++ после обновления команд командной строки OSX 6.3

После обновления с помощью средств командной строки 6.3 из App Store программы, включающие или которые внутренне include , вызывают ошибку файла, не найденную следующим образом. Cpp ничего интересного, но включает в один из включенных заголовков. c++ -O3 -I/Users/farleylai/Documents/dev/git/ESMS/Optimizer/../StreamIt/src/cluster/headers -L/Users/farleylai/Documents/dev/git/ESMS/Optimizer/../StreamIt/build/binaries/clusterStaticLibrary /Users/farleylai/Documents/dev/git/ESMS/Optimizer/build/StreamIt/FIR/511/512/combined_threads.cpp -o streamit -lcluster -lpthread -lstdc++ In file included from /Users/farleylai/Documents/dev/git/ESMS/Optimizer/build/StreamIt/FIR/511/512/combined_threads.cpp:9: In file included from /Users/farleylai/Documents/dev/git/ESMS/Optimizer/../StreamIt/src/cluster/headers/node_server.h:22: […]

В чем разница между const_iterator и non-const iterator в C ++ STL?

В чем разница между const_iterator и iterator и где вы будете использовать один над другим?

Какой контейнер STL следует использовать для FIFO?

Какой контейнер STL лучше всего подходит моим потребностям? У меня в основном есть контейнер с 10 элементами, в котором я постоянно push_back новые элементы, а pop_front самый старый элемент (около миллиона раз). В настоящее время я использую std::deque для задачи, но мне было интересно, будет ли std::list более эффективным, поскольку мне не нужно будет перераспределять […]

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

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

Как выбрать карту и unordered_map?

Предположим, я хотел отобразить данные со строкой в ​​качестве ключа. Какой контейнер я должен выбрать, map или unordered_map ? unordered_map занимает больше памяти, поэтому предположим, что память не является проблемой, и проблема заключается в скорости. unordered_map обычно должен давать среднюю сложность O (1) с наихудшим случаем O (n). В каких случаях он достигнет O (n)? […]

Является ли std :: vector копированием объектов с помощью push_back?

После многих исследований с valgrind я сделал вывод, что std :: vector делает копию объекта, который вы хотите push_back. Это действительно так ? Вектор не может содержать ссылку или указатель объекта без копии?! благодаря

Как вы копируете содержимое массива в std :: vector в C ++ без цикла?

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

STL-аналог в Фортране

Основа: у меня очень большая параллельная программа Fortran90 / MPI, которая представляет собой сложную физическую модель. Я хочу добавить к нему новые функции: например, мне нужно организовать очередь сообщений, ввести meresort где-нибудь и использовать хеш-таблицы. Проблема: я знаю, как писать хеш-таблицу, создавать очереди и код слияния самостоятельно, но я не думаю, что это хорошая идея […]

Давайте будем гением компьютера.