photo
+ Responder ao Tópico
Resultados de 1 a 1 de 1

Thread: Qual é a melhor coisa sobre os modelos?

  1. #1 Fechar a publicação
    Banned
    Data de afiliação
    Aug 2018
    Postagens
    342
    Obrigado
    91
    Agradecimentos 449 Tempos em 217 Postagens

    Qual é a melhor coisa sobre os modelos?

    Os modelos das funções são usados quando é necessário realizar as mesmas operações com diferentes tipos de dados, por exemplo, localizar o elemento máximo na matriz. A principal vantagem da utilização de modelos é que o programador não necessita escrever uma sobrecarga separada para cada tipo. Ou seja, em vez de várias declarações do conjunto de sobrecargas para cada tipo



    double ArrayMax(double array[])
    {
    ...
    }
    int ArrayMax(int array[])
    {
    ...
    }
    uint ArrayMax(uint array[])
    {
    ...
    }
    long ArrayMax(long array[])
    {
    ...
    }
    datetime ArrayMax(datetime array[])
    {
    ...
    }


    basta escrever uma função de modelo



    template<typename T>
    T ArrayMax(T array[])
    {
    if(ArraySize()==0)
    return(0);
    uint max_index=ArrayMaximum(array);
    return(array[max_index]);
    }


    e, em seguida, usá-la em seu código:



    double high[];
    datetime time[];
    ....
    double max_high=ArrayMax(high);
    datetime lasttime=ArrayMax(time);


    Neste caso, o parâmetro formal T especifica o tipo de dados utilizados, durante a compilação, ele é substituído pelo tipo real utilizado, ou seja, o compilador gera automaticamente uma função separada para cada tipo, isto é, double, datetime e assim por diante. Da mesma forma, na linguagem MQL5, você pode criar modelos de classes usando todas as vantagens de tal abordagem.

    Though trading on financial markets involves high risk, it can still generate extra income in case you apply the right approach. By choosing a reliable broker such as InstaForex you get access to the international financial markets and open your way towards financial independence. You can sign up here.


  2. The Following User Says Thank You to forumforex For This Useful Post:

    Não registrado (1 )

+ Responder ao Tópico

Permissões de postagens

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts