Discussão do artigo "Fundamentos básicos da Programação MQL5: Lista" - página 8

 
C-4:

Nada extra? Sim, suas classes são 100% redundantes. Todos os métodos e dados da cl1 são quase completamente duplicados pela classe cl2, enquanto a base está vazia.

Cl1 e cl2 não são duplicadas, elas são classes diferentes, têm métodos diferentes. A base está vazia porque é necessária apenas para amontoar as diferentes classes cl1 e cl2 em um único array.

Supérfluo. A menos que você possa criar um método em cada classe.

 
Integer:
Eles fizeram. Isso é ótimo. Mas, como se vê, há mais do que isso.

Então, o que havia para mostrar? Aqui está o que diz o início:

papaklass:

É possível discutir substancialmente! Que bom ler essa troca de opiniões.

Para ThteXpert.

Se não for difícil para você, dê alguns exemplos de códigos (você pode usar sua própria prática) que revelariam suas teses. Não se esqueça de que a maioria dos "burros" está aqui (antes de tudo, estou falando de mim mesmo).

Dei-lhe um exemplo concreto de que você não precisa de uma única coleção que funcione com diferentes nós, mas de um nó que funcione com diferentes coleções, que, por sua vez, funcionam com diferentes classes. Mostrei como tudo isso funciona com o CObject.
 
C-4:

Então, o que havia para mostrar? Aqui está o que o topikstarter escreveu:

Dei a ele um exemplo concreto de que você não precisa de uma coleção que funcione com diferentes nós, mas de um nó que funcione com diferentes coleções, que, por sua vez, funcionam com diferentes classes. Eu lhe mostrei como tudo isso funciona com o CObject.
Sim, funciona, mas isso não nos deixa felizes:)
 
papaklass:

... dê alguns exemplos de códigos (você pode usar sua própria prática), que revelariam suas teses.

Cara, eu adoraria, mas não tenho tempo para o MT5 agora. E um ou dois dias provavelmente terão que ser gastos em uma implementação normal.
 
TheXpert:
Eu adoraria, mas não tenho tempo para o MT5 agora. E provavelmente levaria um ou dois dias para uma implementação normal.
Como se fosse uma dica sutil de que tudo o que foi escrito aqui é uma besteira completa, e só você tem algum método mágico em seu estoque, mas só ele permanecerá desconhecido para qualquer pessoa devido a circunstâncias insuperáveis. Não é de se admirar.
 
Integer:
Como se fosse uma dica sutil de que tudo o que foi escrito aqui é um monte de bobagens, e que só você tem algum método mágico em seu estoque, mas que só ele permanecerá desconhecido para qualquer pessoa devido a circunstâncias insuperáveis. Não é de surpreender.
Talvez com a palavra "implementação normal" você esteja se referindo à implementação em modelos.
 
Integer:

Na verdade, eu não pressiono códigos. E eu publico muitas coisas.

Integer:
Uma espécie de dica sutil de que tudo o que foi escrito aqui é besteira.

Não chega nem perto de ser uma dica. Muitos dos artigos aqui são incríveis. Os códigos também são.

Normal está em modelos, sim.

Ah, sim:
Por que você está dando voltas aqui se não está nem aí? )
 

Administradores e moderadores, que padrão duplo é esse?

Alguém vomita bile e lama - como água de um ganso... e um cara normal é banido por nada.....

 

Não é um erro do MT5 que um membro da classe seja alterado em um método const de uma classe????

CiSingleList.mqh - compila sem erros.

//+------------------------------------------------------------------+
//|| Contar o tamanho da lista|
//+------------------------------------------------------------------+
void CiSingleList::CalcSize(void) const
  {
   TRACE_CALL(_t_flag)
   uint count=0;
   if(!this.IsEmpty()) // se a lista não estiver vazia
     {
      // processamento de uma lista com um nó
      if(this.m_head==this.m_tail && this.m_head.GetVal()!=NULL)
         count=1;
      // caso contrário, percorra toda a lista 
      else
        {
         CiSingleNode *offNode=this.m_tail.GetNextNode();
         for(CiSingleNode *sn=this.m_head; sn!=offNode; sn=sn.GetNextNode())
            ++count;  // aumentar o contador
        }
     }
   this.m_size=count;
  }
Документация по MQL5: Основы языка / Типы данных / Структуры и классы
Документация по MQL5: Основы языка / Типы данных / Структуры и классы
  • www.mql5.com
Основы языка / Типы данных / Структуры и классы - Документация по MQL5
 
ALXIMIKS:

Não é um erro do MT5 que um membro da classe seja alterado em um método const de uma classe????

Erro, provavelmente ainda não corrigido. Eles escreveram em algum lugar recentemente.