ExpertiDict

C · Essencial · Inglês · Técnico

const

/kɑnst/palavra-chave

Qualificador que declara que um objeto não deve ser modificado depois de inicializado. O compilador recusa atribuições diretas, mas não impede alterações por outros meios.

Onde usar

Usado em parâmetros de ponteiro, como const char *s, para avisar quem chama que a função só lê. Em review, const é documentação verificada pelo compilador.

Em código

size_t conta(const char *s) {
  size_t n = 0;
  while (s[n]) n++;
  return n; // s não é alterado
}

Exemplos

Make the parameter const char * since we only read it.

Faça o parâmetro const char *, já que só lemos.

Dropping const with a cast is a code smell.

Tirar o const com um cast é um mau cheiro no código.

Cuidado

Achar que const protege a memória: é uma promessa de compilação, e escrever num objeto originalmente const via cast é comportamento indefinido.

Sinônimos

constante

Veja também

Todos os termos de C