Perguntas com a marcação «stl»

96
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...

95
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 mais lento / rápido! . Só não entendo...

94
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...

92
como anexar um objeto list <T> a outro

em C ++, tenho dois list<T>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 com...

92
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 <char, int> m1; map <char, int>::iterator m1_it; typedef pair <char, int> count_pair; Estou usando o mapa para armazenar o número de ocorrências de...

91
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 que push_front...

90
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 agir com base no fato de...

90
Alternativa ao vetor <bool>

Como (esperançosamente) todos nós sabemos, vector<bool>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<char>, ou Use uma classe de wrapper e tenha...

90
JSTL if tag para strings iguais

Eu tenho uma variável de um objeto na minha página JSP: <%= ansokanInfo.getPSystem() %> O valor da variável é o NAT que está correto e desejo aplicar certos elementos da página a este valor. Como faço para usar uma tag para conhecer o caso? Eu tentei algo como <c:if test =...

89
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...