Perguntas com a marcação «stl»

A Standard Template Library, ou STL, é uma biblioteca C ++ de contêineres genéricos, iteradores, algoritmos e objetos de função. Quando o C ++ foi padronizado, grandes partes do STL foram adotadas na Biblioteca Padrão, e essas partes na Biblioteca Padrão também são, às vezes, erroneamente referidas coletivamente como "o STL".

6
Capacidade inicial do vetor em C ++
Qual é o capacity()de um std::vectorque é criado usando o construtor padrão? Eu sei que o size()é zero. Podemos afirmar que um vetor construído padrão não chama a alocação de memória heap? Dessa forma seria possível criar um array com reserva arbitrária usando uma única alocação, como std::vector<int> iv; iv.reserve(2345);. …

8
vector :: at vs. vector :: operator []
Eu sei que at()é mais lento do que []por causa de sua verificação de limite, que também é discutida em questões semelhantes como C ++ Vector at / [] operator speed ou :: std :: vector :: at () vs operator [] << resultados surpreendentes !! 5 a 10 vezes …
95 c++  stl  stdvector 


2
std :: back_inserter para um std :: set?
Eu acho que esta é uma pergunta simples. Eu preciso fazer algo assim: std::set<int> s1, s2; s1 = getAnExcitingSet(); std::transform(s1.begin(), s1.end(), std::back_inserter(s2), ExcitingUnaryFunctor()); Claro, std::back_inserternão funciona, pois não há push_back. std::insertertambém precisa de um iterador? Eu não usei, std::inserterentão não tenho certeza do que fazer. Alguém tem alguma ideia? Claro, …
94 c++  algorithm  stl 





2
como anexar um objeto list <T> a outro
em C ++, tenho dois list&lt;T&gt;objetos Ae Be eu quero adicionar todos os membros Baté o final do A. Pesquisei algumas fontes diferentes e não encontrei uma solução simples (ei A.append(B);) e isso me surpreendeu um pouco. Qual é a melhor maneira de fazer isso? Acontece que não me importo …
92 c++  list  stl 

6
Como atualizar std :: map depois de usar o método find?
Como atualizar o valor de uma chave std::mapapós usar o findmétodo? Eu tenho um mapa e declaração de iterador como este: map &lt;char, int&gt; m1; map &lt;char, int&gt;::iterator m1_it; typedef pair &lt;char, int&gt; count_pair; Estou usando o mapa para armazenar o número de ocorrências de um personagem. Estou usando o …
92 c++  map  stl  stdmap 

2
Por que std :: stack usa std :: deque por padrão?
Uma vez que as únicas operações necessárias para que um contêiner seja usado em uma pilha são: costas() retrocesso() pop_back () Por que o contêiner padrão para ele é um deque em vez de um vetor? As realocações deque não fornecem um buffer de elementos antes de front () para …
91 c++  stl  containers 


9
std :: map insert ou std :: map find?
Supondo um mapa onde você deseja preservar as entradas existentes. 20% do tempo, a entrada que você está inserindo são novos dados. Há uma vantagem em fazer std :: map :: find then std :: map :: insert usando esse iterador retornado? Ou é mais rápido tentar a inserção e …
90 c++  optimization  stl  stdmap 

8
Alternativa ao vetor <bool>
Como (esperançosamente) todos nós sabemos, vector&lt;bool&gt;está totalmente quebrado e não pode ser tratado como um array C. Qual é a melhor maneira de obter essa funcionalidade? Até agora, as ideias em que pensei são: Use um vector&lt;char&gt;, ou Use uma classe de wrapper e tenha vector&lt;bool_wrapper&gt; Como vocês lidam com …
90 c++  stl  vector  boolean 

8
Qual contêiner STL devo usar para um FIFO?
Qual contêiner STL atenderia melhor às minhas necessidades? Eu basicamente tenho um contêiner de 10 elementos de largura no qual eu continuamente push_backnovos elementos enquanto pop_frontingiro o elemento mais antigo (cerca de um milhão de vezes). No momento, estou usando um std::dequepara a tarefa, mas std::listgostaria de saber se a …
89 c++  stl  fifo 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.