padrão C ++ Language Support Library - Parte 2 Introdução Esta é a parte 2 da minha série, C ++ Language Biblioteca Suporte Padrão. Nesta parte da série, nós olhamos para funções que são chamadas implicitamente durante o início e término de um C ++ programa personalizado. Bem, você pode chamar as funções aqui em seus programas personalizados. Vamos falar principalmente sobre três funções, que são atexit, saída e abortar. Essas funções podem ser obtidas a partir do cabeçalho cstdlib.
Nota: Se você não pode ver o código ou se você acha que alguma coisa está faltando (link quebrado, imagem ausente), apenas contacte-me em [email protected]. Ou seja, contacte-me para o menor problema que você tem sobre o que você está lendo. Lembre-se Lembre-se que a primeira função que é chamada quando o seu programa personalizado C ++ começa, é a função principal; você já viu muitas vezes. Essa função é chamada automaticamente quando o programa for iniciado. Qualquer outra função fora a função principal deve ser chamado a partir da função principal.
Algumas destas funções pode ser chamado por outras funções que foram chamadas pela função principal. A Função atexit A sintaxe da função atexit é: extern "C ++" int atexit (void (* f) (void)) Parece complicado; No entanto, se você entender ponteiro para função em C ++ não deve ser complicado. Se você não entender isso, então leia o artigo neste blog intitulado ponteiro para função em C ++, que eu mencionei na primeira parte da série. O argumento (void (* f) (void)) para a função é um ponteiro para uma função.
Pode haver, pelo menos, 32 cujas funções tais apontadores seriam usadas como argumentos para a função atexit (um de cada vez). Essas funções (pelo menos 32) são chamados quando um programa C ++ (personalizado) está a terminar. Quando um programa está a terminar o que precisa fazer alguns retoques como salvar os dados em um arquivo que será usado na próxima sessão. A esta luz cada programa tem um determinado conjunto de coisas para fazer, dependendo da finalidade do programa (ao fechar). Qualquer destas coisas é feito por uma das funções cujo ponteiro seria argumento para a função atexit.
O objetivo da função atexit é registrar (registro na memória) as funções para estes últimos retoques. Quando a função atexit executa usando qualquer um dos ponteiros para essas funções como argumento a função de pontas é registradas. Isto tem de ser feito antes que o programa C ++ atinge a sua fase de terminação. Como pode ser visto