Função Sobrecarga vs. Substituição em C ++

Autor: Laura McKinney
Data De Criação: 4 Abril 2021
Data De Atualização: 5 Poderia 2024
Anonim
Função Sobrecarga vs. Substituição em C ++ - De Outros
Função Sobrecarga vs. Substituição em C ++ - De Outros

Contente

A principal diferença entre sobrecarga de função e substituição em C ++ é que a sobrecarga de função em C ++ é polimorfismo em tempo de compilação, enquanto a substituição em C ++ é um polimorfismo em tempo de execução.


O uso de um nome para várias formas e tipos é conhecido como polimorfismo. Polimorfismo é um dos conceitos mais importantes na programação orientada a objetos. Existem muitas maneiras de implementar o polimorfismo que funciona como sobrecarga, substituição e função virtual. A sobrecarga de função em C ++ é um polimorfismo em tempo de compilação, enquanto a substituição em C ++ é um polimorfismo em tempo de execução.

A sobrecarga é um polimorfismo de tempo compilado. A sobrecarga fornece uma interface comum para vários métodos. A sobrecarga do código médio contém o mesmo nome da função enquanto é redefinida. A sobrecarga torna uma função sobrecarregada diferente de outra função. Existem diferentes parâmetros de função de sobrecarga.


O polimorfismo em tempo de execução é conhecido como substituição. A substituição é obtida usando uma palavra-chave de função que é virtual. Essa palavra-chave é usada na classe base. Quando a classe derivada redefine uma função, a função substituída não pode ser alterada. A substituição em C ++ determina qual versão da função é chamada.

Conteúdo: Diferença entre Sobrecarga de Função e Substituição em C ++

  • Gráfico de comparação
  • Sobrecarga
  • Substituindo
  • Principais diferenças
  • Conclusão
  • Vídeo explicativo

Gráfico de comparação

BaseSobrecargaSubstituindo
SignificadoSobrecarga de função em C ++ é polimorfismo em tempo de compilação

A substituição de função em C ++ é um polimorfismo em tempo de execução.


 

Palavra-chave Existe uma palavra-chave específica em sobrecarga"Virtual" é uma palavra-chave específica na substituição de função.
Realização Na função de sobrecarga, há tempo de compilação.Na substituição de função, há uma realização em tempo de execução.
Obrigatório Na sobrecarga de função, há ligação antecipadaNa substituição de função, há ligação tardia

Sobrecarga

A sobrecarga é um polimorfismo de tempo compilado. A sobrecarga fornece uma interface comum para vários métodos. A sobrecarga do código médio contém o mesmo nome da função enquanto é redefinida. A sobrecarga torna uma função sobrecarregada diferente de outra função. Existem diferentes parâmetros de função de sobrecarga.

Substituindo

O polimorfismo em tempo de execução é conhecido como substituição. A substituição é obtida usando uma palavra-chave de função que é virtual. Esta palavra-chave é usada na classe base. Quando a classe derivada redefine uma função, a função substituída não pode ser alterada. A substituição em C ++ determina qual versão da função é chamada.

Principais diferenças

  1. A sobrecarga de função em C ++ é polimorfismo em tempo de compilação, enquanto a substituição de função em C ++ é em tempo de execução
  2. Há uma palavra-chave específica na sobrecarga, enquanto "Virtual" é uma palavra-chave específica na substituição da função.
  3. Na função de sobrecarga, há tempo de compilação, enquanto na função de substituição há um tempo de execução
  4. Na sobrecarga de função, há ligação antecipada, enquanto na substituição de função, há ligação tardia

Conclusão

Neste artigo acima, vemos a clara diferença entre sobrecarga de função e substituição de função com exemplos.

Vídeo explicativo