Skip to content
Latchkey

O que é um header guard?

Um header guard, também chamado de include guard, é um conjunto de diretivas de pré-processador que envolvem um cabeçalho para que seu conteúdo seja processado apenas na primeira vez em que é incluído. Uma macro única é definida na primeira inclusão e verificada nas seguintes para pular o corpo. Isso impede que as mesmas declarações apareçam duas vezes em uma unidade de tradução.

Por que isso importa

Sem um guard, um cabeçalho trazido por múltiplos caminhos de include produz erros de redefinição que quebram o build. Header guards são uma salvaguarda básica para qualquer cabeçalho não trivial.

Guias relacionados