Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A biblioteca padrão C++ declara ou define todas as entidades da biblioteca em um ou mais cabeçalhos padrão. Para uma lista completa de cabeçalhos que esta implementação suporta, veja Referência de ficheiros de cabeçalho.
A norma C++ define dois tipos de bibliotecas conformes:
- Uma implementação alojada, que suporta todos os cabeçalhos de biblioteca padrão necessários descritos pela norma ISO C++.
- Uma implementação independente, que requer apenas um subconjunto dos cabeçalhos padrão da biblioteca. O subconjunto exigido é:
| Subconjunto de cabeçalho independente | ||
|---|---|---|
<atomic> (declarando pelo menos atomic_signed_lock_free e atomic_unsigned_lock_free) |
<cstdint> |
<ranges> |
<bit> |
<cstdlib> (declarando pelo menos abort, atexit, at_quick_exit, exit, quick_exit) |
<ratio> |
<cfloat> |
<exception> |
<tuple> |
<climits> |
<functional> |
<typeinfo> |
<compare> |
<initializer_list> |
<source_location> |
<concepts> |
<iterator> |
<type_traits> |
<coroutine> |
<limits> |
<utility> |
<cstdarg> |
<memory> |
<version> |
<cstddef> |
<new> |
Os seguintes cabeçalhos estão obsoletos desde C++11: <ciso646>, <cstdalign>, e <cstdbool>.
Outras diferenças entre implementações independentes e alojadas são:
- Implementações alojadas requerem uma função global chamada
main. Uma implementação independente pode definir as suas próprias funções de arranque e terminação. - As implementações alojadas devem suportar mais do que um thread a correr ao mesmo tempo. Implementadores de implementações independentes decidem se a sua biblioteca suporta threads concorrentes.
A biblioteca padrão Microsoft C++ satisfaz tanto requisitos independentes como hospedados.
Os cabeçalhos das bibliotecas C++ têm duas subdivisões mais amplas:
Esta secção contém as seguintes secções:
- Utilização de cabeçalhos de biblioteca C++
- Convenções de bibliotecas em C++
- Convenções iostreams
- Arranque e terminação de programas em C++
- Bibliotecas seguras: biblioteca padrão C++
- Iteradores verificados
- Suporte a iteradores de depuração
- Referência da biblioteca padrão C++ (STL)
- Segurança de threads na biblioteca padrão C++
- Espaço de nomes Stdext
- Expressões regulares (C++)
Para mais informações sobre bibliotecas de tempo de execução Visual C++, consulte Funcionalidades da Biblioteca CRT.
Note
A implementação da Microsoft da Biblioteca Padrão C++ é frequentemente referida como STL ou Biblioteca de Modelos Padrão. Embora Biblioteca Padrão C++ seja o nome oficial da biblioteca conforme definido na ISO 14882, devido ao uso popular de "STL" e "Standard Template Library" nos motores de busca, ocasionalmente usamos esses nomes para facilitar a localização da nossa documentação. Do ponto de vista histórico, "STL" referia-se originalmente à Standard Template Library escrita por Alexander Stepanov. Partes dessa biblioteca foram padronizadas na Biblioteca Padrão C++, juntamente com a biblioteca de runtime ISO C, partes da biblioteca Boost e outras funcionalidades. Por vezes, "STL" também é usado para se referir às partes de contentores e algoritmos da Biblioteca Padrão C++ adaptada do STL de Stepanov. Nesta documentação, a Biblioteca de Modelos Padrão (STL) refere-se à Biblioteca Padrão C++ como um todo.