Pytania oznaczone «stl»

101
Dostęp do elementów mapy const w C ++

Próbowałem użyć operatora [], aby uzyskać dostęp do elementu w mapie const C ++, ale ta metoda zawiodła. Próbowałem też użyć „at ()”, aby zrobić to samo. Tym razem zadziałało. Jednak nie mogłem znaleźć żadnego odniesienia do używania "at ()" w celu uzyskania dostępu do elementu w mapie const C...

99
Dlaczego w C ++ 20 wprowadzono std :: ssize ()?

C ++ 20 wprowadził std::ssize()bezpłatną funkcję, jak poniżej: template <class C> constexpr auto ssize(const C& c) -> std::common_type_t<std::ptrdiff_t, std::make_signed_t<decltype(c.size())>>; Wydaje się static_cast, że możliwa implementacja polega na przekształceniu...

98
std :: back_inserter dla std :: set?

Myślę, że to proste pytanie. Muszę zrobić coś takiego: std::set<int> s1, s2; s1 = getAnExcitingSet(); std::transform(s1.begin(), s1.end(), std::back_inserter(s2), ExcitingUnaryFunctor()); Oczywiście std::back_inserternie działa, ponieważ nie ma push_back. std::inserterrównież potrzebuje...

95
wektor :: at a wektor :: operator []

Wiem, że at()jest to wolniejsze niż []ze względu na sprawdzanie granic, które jest również omawiane w podobnych pytaniach, takich jak C ++ Vector at / [] operator speed lub :: std :: vector :: at () vs operator [] << zaskakujące wyniki !! 5 do 10 razy wolniej / szybciej! . Po prostu nie...

94
jak dołączyć obiekt list <T> do innego

w C ++ mam dwa list<T>obiekty Ai Bchcę dodać wszystkie składowe Bna końcu A. Przeszukałem kilka różnych źródeł i nie znalazłem prostego rozwiązania (ei A.append(B);) i to mnie trochę zaskakuje. Jaki jest najlepszy sposób, aby to zrobić? Tak się składa, że ​​po tym nie obchodzi mnie B...

93
std :: map insert lub std :: map find?

Zakładając mapę, na której chcesz zachować istniejące wpisy. W 20% przypadków wpis, który wstawiasz, to nowe dane. Czy jest korzyść z robienia std :: map :: find then std :: map :: insert przy użyciu tego zwróconego iteratora? A może szybciej jest próba wstawienia, a następnie działanie w...

93
Którego kontenera STL powinienem użyć do FIFO?

Który pojemnik STL najlepiej pasowałby do moich potrzeb? Zasadniczo mam pojemnik o szerokości 10 elementów, w którym ciągle wprowadzam push_backnowe elementy, podczas pop_frontgdy najstarszy element (około milion razy). Obecnie używam std::dequedo tego zadania, ale zastanawiałem się, czy a...

92
Alternatywa dla wektora <bool>

Jak (miejmy nadzieję) wszyscy wiemy, vector<bool>jest całkowicie zepsuty i nie może być traktowany jako tablica C. Jaki jest najlepszy sposób na uzyskanie tej funkcjonalności? Do tej pory pomysły, o których myślałem, to: Użyj vector<char>zamiast tego lub Użyj klasy opakowania i...

92
Początkowa pojemność wektora w C ++

Co to capacity()jest, std::vectorktóry jest tworzony przy użyciu domyślnego konstruktora? Wiem, że to size()jest zero. Czy możemy stwierdzić, że domyślnie skonstruowany wektor nie wywołuje alokacji pamięci sterty? W ten sposób byłoby możliwe utworzenie tablicy z dowolną rezerwą przy użyciu...

91
Dlaczego std :: stack domyślnie używa std :: deque?

Ponieważ jedyne operacje wymagane do użycia kontenera w stosie to: plecy() push_back () pop_back () Dlaczego domyślny kontener jest dla niego deque zamiast wektorem? Czy deque realokacje nie dają bufora elementów przed front (), aby push_front () było wydajną operacją? Czy te elementy nie...

91
JSTL if tag dla równych ciągów

Mam zmienną z obiektu na mojej stronie JSP: <%= ansokanInfo.getPSystem() %> Wartością zmiennej jest NAT, która jest poprawna i chcę zastosować określone elementy strony dla tej wartości. Jak używać tagu, aby poznać sprawę? Spróbowałem czegoś takiego <c:if test =...

90
Jak zaktualizować std :: map po użyciu metody find?

Jak zaktualizować wartość klucza std::mappo użyciu findmetody? Mam mapę i deklarację iteratora taką jak ta: map <char, int> m1; map <char, int>::iterator m1_it; typedef pair <char, int> count_pair; Używam mapy do przechowywania liczby wystąpień znaku. Używam Visual C ++...