stl

Czy hash map jest częścią STL?

Quick question...Is hash_map część STL?

Jak mogę utworzyć listę w c++?

Jak utworzyć listę w C++? Potrzebuję go do stworzenia połączonej listy. Jak miałbym to zrobić? Czy istnieją dobre samouczki lub przykłady, które mógłbym naśladować?

Czy metoda std::list:: remove wywołuje destruktor każdego usuniętego elementu?

std::list<Node *> lst; //.... Node * node = /* get from somewhere pointer on my node */; lst.remove(node); Czy metoda std::list:: remove wywołuje destruktor (i wolną pamięć) każdego usuniętego elementu? Jeśli tak, jak mogę tego uniknąć?

Jak używać std:: foreach z parametrami / modyfikacją

I ' ve found myself writing for(int i=0;i<myvec.size();i++) myvec[i]->DoWhatever(param); Bardzo, i chciałbym to ... ->DoWhatever(param); I chciałbym go też przepisać. Jakieś pomysły? Poza tym, z różnych powodów, nie chcę używać Boosta.

Understanding std:: accumulate

Chcę wiedzieć dlaczego std::accumulate (aka reduce) potrzebny jest trzeci parametr. Dla tych, którzy nie wiedzą, czym jest ac ... = accumulate(V.begin()+1, V.end(), V.begin()); To zadziała dla każdego op. dlaczego w ogóle potrzebny jest trzeci parametr?

Wykorzystanie dla każdego z elementów mapy

Mam mapę, na której chciałbym wykonać wywołanie każdego typu danych object member function. Jeszcze Wiem, jak to zrobić na do ... gin(), Vector.end(), std::mem_fun(&MyClass::Method)); Wygląda zbyt zaciemnione i nie podoba mi się to. Jakieś sugestie?

Różnica między erase I remove

Jestem nieco zdezorientowany co do różnicy między użyciem algorytmu STD:: remove. W szczególności nie jestem w stanie zrozumi ... 2, a nie 1? Przeczytałem artykuł w książce Scotta Meyera Effective STL o idiomie erase-remove. Ale wciąż mam to zamieszanie.

Jaka jest domyślna funkcja skrótu używana w C++ std::unordered map?

Używam unordered_map<string, int> I unordered_map<int, int> Jaka funkcja hash jest używana w każdym przyp ... owiednio. Jestem zainteresowany poznaniem algorytmu funkcji hash w przypadku kluczy string i int oraz ich statystyk kolizji.

"Right" way to deallocate an std:: vector object

Pierwsze rozwiązanie to: std::vector<int> *vec = new std::vector<int>; assert(vec != NULL); // ... delete vec; ... ić? Aktualizacja: Jestem świadomy, że Destruktor zostanie wywołany, gdy będzie już poza stosem, byłem ciekaw innych metod.

Korzystanie z mapy STL wskaźników funkcji

Opracowałem silnik skryptowy, który ma wiele wbudowanych funkcji, więc aby wywołać dowolną funkcję, Mój kod po prostu wszedł ... przeciwnym razie mógłbym zminimalizować liczbę porównań, sprawdzając znak w czasie wykonywania (będzie dłuższy, ale szybszy).

Drukowanie / debugowanie libc++ STL za pomocą XCode/LLDB

Próbuję użyć LLDB w Xcode 8 do debugowania bardzo podstawowego STL. Kiedyś potrafiłem wydrukować taki wektor: p myvector[0] ... epozytorium LLDB svn, ale to chyba nic nie zmienia. Czy ktoś był w stanie uzyskać jakieś użyteczne wyjście z LLDB z libc++??

Różnica między std:: remove i erase dla vector?

Mam wątpliwości, które chciałbym wyjaśnić w mojej głowie. Zdaję sobie sprawę z odmiennego zachowania std::vector pomiędzy era ... ozostawia wektor niezmieniony przez przenoszenie rzeczy. Jeśli przedmioty są ciężkie, ta różnica może mieć znaczenie, prawda?

Czy powinienem być biegły w bibliotekach STL przed nauką BOOST alternatywy?

Czy ma sens ograniczanie się do bibliotek STL podczas nauki C++, a następnie zajmowanie się boostem i jego dodatkami po tym, jak stałeś się dość biegły w C++? A może powinieneś zanurzyć się w BOOST podczas nauki C++?

Co to jest STL?

Nie jestem programistą C++ i mam trudności ze zrozumieniem wyjaśnień podanych na stronach internetowych. Nie rozumiem kontene ... ka: Co to jest STL i co może dla mnie zrobić? Jak to porównać do czegoś takiego jak standardowa biblioteka Pythona lub glibc?

Dlaczego emplace back jest szybszy niż push back?

Myślałem, że emplace_back będzie zwycięzcą, robiąc coś takiego: v.push_back(myClass(arg1, arg2)); Ponieważ emplace_back s ... ] Uruchamiałem kod w debug mode, co powoduje, że pomiary są nieważne. Dla benchmarkingu, zawsze Uruchom kod w release mode.

jak przeglądać zawartość kontenerów STL przy użyciu GDB 7.x

Używałem rozwiązania makro, jak to jest opisane tutaj . Jest jednak wzmianka o tym, jak wyświetlać je bez makr. Mam na myśli GDB w wersji 7 i wyżej. Mógłby ktoś zilustrować jak? Thanks

std:: endl jest nieznanego typu, gdy operator przeciążenia<

I overloaded operator template <Typename T> UIStream& operator<<(const T); UIStream my_stream; my_stream ... my_stream << endl; Podaje błąd kompilacji: Błąd C2678: binarny' Na czym polega praca my_stream << endl?

Inicjalizacja tablicy wektorowej łańcuchów

Czy jest możliwe zainicjowanie tablicy wektorowej łańcuchów. Na przykład: static std::vector<std::string> v; //dekla ... ciągami. Czy powinienem po prostu wypełnić go w konstruktorze, jeśli nie można go zainicjować, tak jak robimy zwykłe tablice.

Jak odwrócić wektor C++?

Czy istnieje wbudowana funkcja wektorowa W C++ do odwrócenia wektora w miejscu? Czy po prostu musisz to zrobić ręcznie?

Dlaczego std:: list:: reverse ma złożoność O (n)?

Dlaczego funkcja odwrotna dla klasy std::list w bibliotece standardowej C++ ma liniowy tryb runtime? Myślę, że dla list podwó ... wrotna powinna być O(1). Odwrócenie podwójnie połączonej listy powinno wiązać się z przełączeniem wskaźnika głowy i ogona.