What's the purpose of using braces (i.e. {}) for a single-line if or loop?

Estou lendo algumas anotações do meu palestrante em C ++ e ele escreveu o seguinte:

Use o entalhe // OKNunca confie na precedência do operador - use sempre parênteses // OKSempre use um {} bloco - mesmo para uma única linha //não está tudo bem, porque ???Objeto const no lado esquerdo da comparação // OKUse unsigned para variáveis ​​que são> = 0 // truque legalDefinir Ponteiro para NULL após a exclusão - Double delete protection // not bad

A terceira técnica não está clara para mim: o que eu ganharia colocando uma linha em um{ ... }?

Por exemplo, pegue este código estranho:

int j = 0;
for (int i = 0 ; i < 100 ; ++i)
{
    if (i % 2 == 0)
    {
        j++;
    }
}

e substitua por:

int j = 0;
for (int i = 0 ; i < 100 ; ++i)
    if (i % 2 == 0)
        j++;

Qual é o benefício de usar a primeira versão?

questionAnswers(23)

yourAnswerToTheQuestion