Sobrecarga nomes função em C ++
C ++ permite ao programador para atribuir o mesmo nome de duas ou mais funções, se as funções podem ser distinguidos por qualquer número ou tipos de argumentos que eles contêm. Esta prática é chamada sobrecarga de função. Considere os seguintes exemplos de funções:
vazio someFunction () {// ... executar alguma função} someFunction void (int nValue) {// ... executar alguma outra função} someFunction nula (char cValue) {// ... executar uma função em personagens} int main (int nNumberofArgs, char * pszArgs []) {someFunction () - // chamar o primeiro functionsomeFunction (10) - // chamar o segundo functionsomeFunction ( 'a') - // agora o terceiro functionreturn 0-}
Comparando cada uma das chamadas anteriores com as declarações deixa claro que a função se entende por cada chamada. aficionados C ++ incluem o tipo de argumentos com o nome da função no que é chamado a função de nome estendida ou assinatura. Assim, os nomes estendidos das três funções são, com efeito, diferente: someFunction (), someFunction (int), e someFunction (char).
Note-se que o tipo de retorno não é parte do nome estendida e não pode ser utilizado para diferenciar as funções.