O compilador realiza um processo de correspondência

para determinar qual especialização de template de fun-

ção deve chamar quando uma função é chamada. Sob

quais circunstâncias uma tentativa de fazer uma correspondência resulta em um erro de compilação?

Passo 1

Saaaalve, tranquilo? Vamos lá resolver mais uma questão juntos?! 😊

Quando uma função é invocada para criar uma especialização de modelo de função, o compilador executa um processo de correspondência de função. O compilador verifica se os argumentos da invocação correspondem aos argumentos no modelo de função.

Quando o processo de correspondência falha, o compilador relata um erro de incompatibilidade de função.

Um exemplo de tal erro é dado abaixo:

error: nenhuma função correspondente para chamar 'func_name(int)'

Resposta

Resposta nos passos.