Perguntas sobre OOP em MQL5 - página 75

 

a pergunta está desligada, só não consigo ler a assinatura da função

void deleteCTest(CTest * &t)

Eu não consigo ler.

Eu deveria, logicamente, escrever algo assim:

void deleteCTest((CTest *) &t)

passar por referência um ponteiro a um tipo, mas o compilador dá erros com tais parênteses, mas pelo menos agora entendo o que pelo menos a função recebida como argumentos ))

 
Igor Makanu:

a pergunta está desligada, só não consigo ler a assinatura da função

Eu não consigo ler a assinatura.

Eu deveria, logicamente, escrever algo assim:

passar por referência um ponteiro a um tipo, mas o compilador gera erros com tais parênteses, mas pelo menos agora entendo o que pelo menos a função recebida como argumentos ))

Não seria mais fácil apenas usar & ...

Para mim & é uma referência rigorosa

* - é uma designação de uma variável onde escreveremos o endereço de uma referência e, além disso, trabalharemos com esta variável, portanto é possível mudar a classe enquanto a obtemos, o que às vezes confunde a situação.

o * & operador é raramente necessário

 
Alexandr Andreev:

o * & operador é raramente necessário

sem dúvida

Mas estou escrevendo, apenas decidi entender o que passamos e o que recebemos quando trabalhamos com ponteiros na MQL .... comGetPointer()

;)

 

Para mim é mais interessante escrever classificação vermelha por classes, ou uma árvore de classificação deliberada, algo como uma lista, mas com pesquisa binária embutida na própria lista, e classificação desta lista (em geral, sou fraco nesta terminologia, talvez já exista, apenas chamada de algo (a árvore colorida de alguém))

Ao mesmo tempo e entender tudo de uma só vez
 
Igor Makanu:

a pergunta está desligada, só não consigo ler a assinatura da função

Eu não consigo ler a assinatura.

Eu deveria, logicamente, escrever algo assim:

void deleteCTest((CTest *) &t)

passar por referência um ponteiro a um tipo, mas o compilador gera erros com tais parênteses, mas pelo menos agora entendo o que pelo menos a função recebida como argumentos ))

Só por precaução - a notação "fantasma" é irrelevante na definição da função, somente quando chamada. E se você passar & para uma função que espera por *, então a conversão não é necessária.

E pensando em voz alta - penso se tal necessidade existe, passe um ponteiro de objeto por referência e pregue/reincarne-o em uma função de terceiros.

Acho que não se encaixa no propósito de objetos dinâmicos.

Alexandr Andreev:

Para mim é mais interessante escrever classificação vermelha por classes, ou uma árvore de classificação deliberada, algo como uma lista, mas com pesquisa binária embutida na própria lista, e classificação da lista (em geral, sou fraco nesta terminologia, talvez já exista, é apenas chamado de alguma forma (a árvore que alguém coloriu))

Também lhe dará uma visão do que está acontecendo

Você já consultou a biblioteca padrão para isso? Todo programador deve escrever alguma classificação a partir do zero :)

 
Методы сортировки и их визуализация с помощью MQL5
Методы сортировки и их визуализация с помощью MQL5
  • www.mql5.com
В Сети можно найти ряд видеороликов с демонстрацией различных видов сортировок. Например, здесь представлена визуализация 24 алгоритмов сортировки. Это видео я и взял за основу, наряду со списком алгоритмов сортировки. Для работы с графиками в MQL5 разработана специальная библиотека Graphic.mqh. Она уже описана в статьях: в частности, здесь...
 
Igor Makanu:

sem argumentos

Mas estou escrevendo, apenas decidi descobrir o que passamos e o que recebemos ao trabalhar com ponteiros na MQL .... com GetPointer() ainda preciso descobrir

;)

Entretanto, é interessante, já que você está aqui há muitos anos e me lembro de você de discussões sobre OOP por muito tempo, e agora acontece que você nem faz idéia de como isso é implementado na MQL. A questão é: por que você tem usado o fórum MQL durante todo esse tempo?)

Talvez você não use objetos dinâmicos, embora eu mal possa imaginar como se pode passar sem eles no OOP, especialmente porque todas as bibliotecas MQ- padrão são adaptadas apenas a ponteiros.

E o objetivo também não é muito claro. Por que você quer estudar MQL se você possui C#? Para se condenar artificialmente às dificuldades... Você sabe que as bibliotecas .Net são facilmente capturadas no MetaEditor? Embora apenas métodos estáticos estejam disponíveis e os tipos de dados sejam limitados. Mas para organizar a comunicação e a transferência de dados é suficiente. Embora eu não tenha verificado, talvez a integração já esteja mais profunda. Tenho que olhar para isso.

 
Igor Makanu:

Você acha que mais da metade dos participantes do fórum entende como funciona o OOP em MQL? - Duvido, pelo menos as mensagens até mesmo dos veteranos e participantes ativos mostram seu nível de conhecimento de MQL

E é por isso que o OOP é usado principalmente para usar SB,

Eu nem sei como as pessoas pensam sobre isso em seus robôs - que é necessário usar tudo isso, é só exibir-se. Estruturas, no máximo.

Semka foi embora com seu desenho, que precisa deste desenho, aqui eles vieram para ganhar dinheiro para si mesmos e seus entes queridos, é claro que os desenvolvedores não sentiram pena dele. Peter, tudo menos comércio). Encher o cérebro dos programadores com funcionalidades desnecessárias

 
awsomdino:

Classes, herança, virtualização, modelos, foi muito difícil para mim entender isto como uma pessoa autodidata, entendi um pouco e abandonei o OOP, não consigo nem imaginar como as pessoas se incomodam em seus robôs - que você tem que usar tudo isto, é apenas um exibicionista. estruturas, no máximo

dependem da tarefa, embora eu concorde em geral - o objetivo não é a arte de escrever o código certo de acordo com as tendências atuais de programação, mas a oportunidade de ganhar dinheiro

Aprendi a desenhar belas figuras no testador, que podem passar no teste sobre a história e seguir em frente, agora estou coletando informações sobre como combinar o comércio on-line e o próprio testador, aqui eu provavelmente preciso de OOP - quero adicionar e excluir estratégias em tempo real, salvar e planejar para poder passar de PC para PC em tempo real - não muita informação sobre o status do TS, mas a maneira usual - para escrever tudo no número mágico não funcionará

em geral, ao analisar o material

awsomdino:

Semka foi com seu desenho, que precisa deste desenho, aqui veio o dinheiro para fazer a si mesmo e a seus entes queridos, é claro que ele não sentia pena dos desenvolvedores. Peter, tudo menos comércio). Cérebros de programadores cheios com sua funcionalidade desnecessária

Bem a criatividade é interessante, e o aquecimento da mente é sempre necessário, estou há alguns anos sem me sentar em um PC - tudo completamente desgastado, então, na verdade, do zero para levantar, então não tome toda a criatividade dos programadores como seu desejo de alcançar algo - apenas criatividade e um aquecimento, imho, embora haja exceções - veja sentido nisso ;)

 
Igor Makanu:

depende da tarefa, embora em geral eu concorde - o objetivo não é alguma arte de escrever o código certo de acordo com as tendências modernas de programação, mas uma oportunidade de ganhar dinheiro


O exemplo deve ser tirado do Saber, não sei o verdadeiro propósito dele, mas já vi o seu "se mais") árvore lá para conseguir o que você precisa. Eu tinha uma pergunta quando cheguei aqui, como fazê-lo imediatamente, e procurar como implementá-lo, reler tudo - realmente só perdeu tempo, não há uma implementação correta, pilhas de artigos e em todos os lugares onde ele próprio está. Fico realmente desapontado quando você não entende muito aqui no código e fica na encruzilhada de 5 estradas e pensa em qual caminho seguir. Não é nem mesmo uma questão de se você vai encontrar um sistema comercial lucrativo aqui, a questão é se você alguma vez vai encontrar o caminho ideal) - Esta é a nossa querida MQL5.