Você está na página 1de 3

UNIVERSIDADE DE RIO VERDE

UNIRV

ALUNO: IVAN PESSOA


PROFESSORA: VANESSA MARQUES

DIFERENÇA LIGAÇÃO ESTÁTICA DE DINÂMICA

RIO VERDE
2020
Definições de ligação estática

Quando o compilador reconhece todas as informações necessárias para chamar uma função
ou todos os valores das variáveis ​durante o tempo de compilação, ele é chamado de "ligação
estática". Como todas as informações necessárias são conhecidas antes do tempo de
execução, elas aumentam a eficiência do programa e também aumentam a velocidade de
execução de um programa. A ligação estática torna um programa muito eficiente, mas
diminui a flexibilidade do programa, já que 'valores da variável' é chamada de função são
predefinidos no programa. A ligação estática é implementada em um programa no momento
da codificação. Sobrecarregar uma função ou um operador é o exemplo de polimorfismo em
tempo de compilação, ou seja, Ligação estática. Implementação de ligação estática em C ++
com um exemplo de sobrecarga #incluir usando espaço para nome std; sobrecarga de classe
{int a, b; public: int load (int x) {// primeira função load (). a = x; cout << "O valor de x é"
<funct (); // A instrução acima decide qual função de classe deve ser chamada. p = & d1; // O
valor do ponteiro é alterado. p-> funct (); // A instrução acima decide qual função de classe
deve ser chamada. p = & d2; // Novamente, o valor do ponteiro é alterado. p-> funct (); // A
instrução acima decide qual função de classe deve ser chamada. retornar 0; } Aqui, o valor do
ponteiro muda à medida que o programa está em execução e o valor do ponteiro decide qual
função da classe será chamada. Portanto, aqui, as informações são fornecidas em tempo de
execução, leva tempo para vincular os dados, o que atrasa a execução.

Eventos que ocorrem no momento da compilação, como, um código de função está associado
a uma chamada de função ou atribuição de valor a uma variável, são chamados de Ligação
estática / inicial. Pelo contrário, quando essas tarefas são realizadas durante o tempo de
execução, elas são chamadas de Ligação dinâmica / tardia.

1. A "eficiência" aumenta na associação estática, pois todos os dados são coletados antes
da execução. Porém, na Vinculação dinâmica, os dados são adquiridos no tempo de
execução, para que possamos decidir qual valor atribuir uma variável e qual função
chamar no tempo de execução, o que torna a execução "flexível".
2. A 'ligação estática' torna a execução de um programa 'mais rápida', pois todos os
dados necessários para executar um programa são conhecidos antes da execução. Na
"ligação dinâmica", os dados necessários para executar um programa são conhecidos
pelo compilador no momento da execução, o que leva tempo para vincular valores aos
identificadores; portanto, torna a execução do programa mais lenta.
3. A Ligação Estática também é chamada de Ligação Antecipada, porque o código de
função está associado à chamada de função durante o tempo de compilação, que é
anterior à Ligação dinâmica, na qual o código de função está associado à chamada de
função durante o tempo de execução, portanto, também é chamado de ligação tardia.
Conclusão:

No entanto, concluímos que, quando temos conhecimento prévio dos valores da chamada
variável e função, aplicamos a ligação estática. Por outro lado, na Vinculação dinâmica,
fornecemos todas as informações no momento da execução.

Você também pode gostar