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

7
push_back vs emplace_back
Estou um pouco confuso sobre a diferença entre push_backe emplace_back. void emplace_back(Type&& _Val); void push_back(const Type& _Val); void push_back(Type&& _Val); Como há uma push_backsobrecarga tomando uma referência rvalue, não vejo bem qual é o objetivo de emplace_backse tornar?





14
Como descobrir se uma chave existe em um C ++ std :: map
Estou tentando verificar se uma determinada chave está em um mapa e de alguma forma não consigo: typedef map<string,string>::iterator mi; map<string, string> m; m.insert(make_pair("f","++--")); pair<mi,mi> p = m.equal_range("f");//I'm not sure if equal_range does what I want cout << p.first;//I'm getting error here então, como posso imprimir o que está em …
450 c++  dictionary  stl 




9
Por que não consigo fazer um vetor de referências?
Quando eu faço isso: std::vector<int> hello; Tudo funciona muito bem. No entanto, quando eu faço um vetor de referências: std::vector<int &> hello; Eu recebo erros horríveis como erro C2528: 'ponteiro': o ponteiro para referência é ilegal Quero colocar um monte de referências a estruturas em um vetor, para não precisar …


11
Classificando um vetor em ordem decrescente
Devo usar std::sort(numbers.begin(), numbers.end(), std::greater<int>()); ou std::sort(numbers.rbegin(), numbers.rend()); // note: reverse iterators classificar um vetor em ordem decrescente? Existem benefícios ou desvantagens em uma abordagem ou outra?
310 c++  sorting  stl  vector  iterator 

14
Melhor maneira de extrair um subvetor de um vetor?
Suponha que eu tenha um tamanho std::vector(vamos chamá-lo myVec) N. Qual é a maneira mais simples de construir um novo vetor que consiste em uma cópia dos elementos X a Y, onde 0 <= X <= Y <= N-1? Por exemplo, myVec [100000]através myVec [100999]de um vetor de tamanho 150000. …
295 c++  stl  vector  range 

23
Qual é a maneira mais eficiente de apagar duplicatas e classificar um vetor?
Eu preciso pegar um vetor C ++ com potencialmente muitos elementos, apagar duplicatas e classificá-lo. Atualmente, tenho o código abaixo, mas ele não funciona. vec.erase( std::unique(vec.begin(), vec.end()), vec.end()); std::sort(vec.begin(), vec.end()); Como posso fazer isso corretamente? Além disso, é mais rápido apagar as duplicatas primeiro (semelhante ao codificado acima) ou executar …
274 c++  sorting  vector  stl  duplicates 

4
Funções de membro std :: string length () e size ()
Eu estava lendo as respostas para esta questão e descobriram que há realmente um método chamado length()para std::string(eu sempre usado size()). Existe algum motivo específico para ter esse método na std::stringaula? Eu li o MSDN e o CppRefernce, e eles parecem indicar que não há diferença entre size()e length(). Se …
265 c++  string  stl  size 

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.