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

89
Оценить список. Содержит строку в JSTL

Мне нужно скрыть элемент, если в JSP присутствуют определенные значения Значения хранятся в списке, поэтому я попробовал: <c:if test="${ mylist.contains( myValue ) }">style='display:none;'</c:if> Но это не работает. Как я могу оценить, содержит ли список значение в JSTL, если список и...

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

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

87
Как я могу создать собственный компаратор для карты?

typedef map<string, string> myMap; При вставке новой пары в myMap, он будет использовать ключ stringдля сравнения своим собственным компаратором строк. Можно ли отменить этот компаратор? Например, я хотел бы сравнить ключ stringпо длине, а не по алфавиту. Или есть другой способ отсортировать...

87
как обеспечить функцию подкачки для моего класса?

Как правильно включить мои swapалгоритмы в STL? 1) Участник swap. Имеет ли std::swapиспользовать SFINAE трюк использовать элемент swap. 2) Свободное положение swapв том же пространстве имен. 3) Частичная специализация std::swap. 4) Все вышеперечисленное. Спасибо. РЕДАКТИРОВАТЬ: Похоже, я не...

86
Копировать значения карты в вектор в STL

В данный момент прорабатываю эффективный STL. Правило 5 предполагает, что обычно предпочтительнее использовать функции-члены диапазона вместо их одноэлементных аналогов. В настоящее время я хочу скопировать все значения на карте (т.е. мне не нужны ключи) в вектор. Как лучше всего это сделать?...

86
Почему я предпочитаю использовать вектор для удаления

поскольку они оба являются непрерывными контейнерами памяти; Что касается функций, в deque есть почти все, что есть в векторе, но даже больше, поскольку его эффективнее вставлять спереди. Почему whould кто предпочитает , std::vectorчтобы std::deque?...

85
EL доступ к значению карты с помощью целочисленного ключа

У меня есть карта с ключом Integer. Как с помощью EL получить доступ к значению по его ключу? Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "One"); map.put(2, "Two"); map.put(3, "Three"); Я думал, что это сработает, но это не так (где карта уже есть в атрибутах...

85
используйте std :: fill для заполнения вектора увеличивающимися числами

Я хотел бы заполнить vector<int>using std::fill, но вместо одного значения вектор должен содержать числа в порядке возрастания после. Я попытался добиться этого, повторяя третий параметр функции на единицу, но это дало бы мне только векторы, заполненные 1 или 2 (в зависимости от позиции...

84
Зачем мне std :: get_ Contemporary_buffer?

С какой целью я должен использовать std::get_temporary_buffer? Стандарт гласит следующее: Получает указатель на хранилище, достаточное для хранения до n смежных T объектов. Я думал, что буфер будет размещен в стеке, но это не так. Согласно стандарту C ++ этот буфер на самом деле не временный....

84
Невозможно включить заголовки C ++, такие как вектор, в Android NDK

Когда я пытаюсь включить какой-либо класс C ++, например вектор, в мой проект Android NDK (с использованием последней версии NDK r5b), я получаю сообщение об ошибке следующего вида ... Compile++ thumb : test-libstl <= test-libstl.cpp...

84
В чем смысл черт характера STL?

Я заметил, что в моей копии справочника SGI STL есть страница о характеристиках характера, но я не вижу, как они используются? Заменяют ли они функции string.h? Кажется, что они не используются std::string, например, length()метод on std::stringне использует length()метод черт характера . Почему...

84
Как выбрать между картой и unordered_map?

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

83
В std :: multiset есть функция или алгоритм для удаления только одного образца (однозначного или повторяющегося), если элемент найден

Возможно, это дубликат, но я ничего не нашел поиском: При erase(value)вызове std::multisetвсе элементы с найденным значением удаляются. Единственное решение, которое я мог придумать, это: std::multiset<int>::iterator hit(mySet.find(5)); if (hit!= mySet.end()) mySet.erase(hit); Это нормально,...

81
char * vs std :: string в c ++ [закрыто]

В настоящее время этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, потребует дебатов, аргументов, опросов или расширенного обсуждения. Если вы считаете, что этот вопрос можно...

81
Является ли цикл for на основе диапазона устаревшим для многих простых алгоритмов?

Решение алгоритма: std::generate(numbers.begin(), numbers.end(), rand); Решение для цикла на основе диапазона: for (int& x : numbers) x = rand(); Зачем мне использовать более подробные std::generateциклы for на основе диапазона в C ++ 11?...

80
Исключение c ++: выброс std :: string

Я хотел бы вызвать исключение, когда мои методы C ++ обнаруживают что-то странное и не могут восстановиться. Можно ли бросать std::stringуказатель? Вот что я с нетерпением ждал: void Foo::Bar() { if(!QueryPerformanceTimer(&m_baz)) { throw new std::string("it's the end of the world!"); } } void...

80
Есть ли готовая к производству очередь без блокировок или хеш-реализация на C ++ [закрыто]

Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме Stack Overflow. Закрыт 2 года назад . Уточните этот вопрос Я довольно много искал в Google...

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

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

79
как инициализировать 'const std :: vector <T>' как массив переменного тока

Есть ли элегантный способ создать и инициализировать const std::vector<const T>лайк const T a[] = { ... }для фиксированного (и небольшого) количества значений? Мне нужно часто вызывать функцию, которая ожидает a vector<T>, но в моем случае эти значения никогда не изменятся. В принципе...

25
Контейнер STL с определенным типом в качестве универсального аргумента

Есть ли способ, которым я могу сделать функцию, которая принимает контейнер с определенным типом (скажем, std::stringв качестве параметра) void foo(const std::container<std::string> &cont) { for(std::string val: cont) { std::cout << val << std::endl; } } и вызвать его для...