De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Joel Saade
Data de Publicação: 26 de Março de 2006
Você, programador ou estudante de C++, precisa conhecer urgentemente a Standard Template Library, ou STL, como é mais conhecida. A STL é uma biblioteca integrada à biblioteca padrão de C++ projetada para manipular estruturas de dados comuns (vetor, deque, lista, fila, pilha etc) por meio de elementos próprios. Como é integrada, está disponível e pronta para uso. Os seus componentes básicos são: containers, algoritmos e iteradores. Os containers armazenam valores de um dado tipo. Os algoritmos correspondem às ações a serem executadas sobre os containers. Os iteradores percorrem os elementos dos containers da mesma forma que um índice ou ponteiro percorre os elementos de um array.
Para mostrar a potencialidade da STL, veja o programa-exemplo seguinte.
// Cria um vetor com nomes de planetas e o ordena ascendentemente 1 #include <iostream> 2 #include <algorithm> 3 #include <vector> 4 #include <string> 5 using namespace std; 6 int main() 7 { 8 vector<string> nomes; 9 vector<string>::iterator it; 10 nomes.push_back("Terra"); 11 nomes.push_back("Marte"); 12 nomes.push_back("Urano"); 13 nomes.push_back("Saturno"); 14 cout << "Vetor antes da ordenação: "; 15 for (it = nomes.begin();it != nomes.end();++it) 16 cout << *it << " "; 17 cout << endl; 18 sort(nomes.begin(),nomes.end()); 19 cout << "Vetor depois da ordenação: "; 20 for (it = nomes.begin();it != nomes.end();++it) 21 cout << *it << " "; 22 cout << endl; 23 return 0; 24 }
Vetor antes da ordenação: | Terra Marte Urano Saturno |
Vetor depois da ordenação: | Marte Saturno Terra Urano |
Linha | Descrição |
2 | Necessária para a maioria dos algoritmos |
3 | Necessária para o uso do container vetor, havendo um arquivo-cabeçalho para cada container |
8 | Declara um container do tipo vetor com elementos do tipo string,chamado nomes |
9 | Declara um iterador, chamado it, para percorrer os elementos do vetor |
10 a 13 | Utilizam o método push_back() definido para vetores, cuja tarefa é inserir elementos no final de um vetor |
15 | Acessa cada elemento do vetor, do primeiro até o último, por meio do iterador it |
16 | Exibe o valor de cada elemento do vetor por meio do operador de de referência *, que retorna o valor apontado pelo iterador it |
18 | Utiliza o algoritmo sort para ordenar elementos de containers |
Para mais detalhes sobre a STL, veja o novo lançamento da Novatec Editora (www.novatec.com.br): "Guia de Consulta Rápida C++ STL", de Joel Saade.
O Joel escreveu também, pela editora Novatec, os seguintes livros:
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários