Estou tentando descobrir meu contador e reescrevê-lo em classes, mas ainda não consigo produzir as funções paralelas de trabalho. Acho que a m_pause deve ser declarada de forma diferente. Como deve ser feito corretamente?
#ifdef __MQL4__#endif
//+------------------------------------------------------------------+//| Счётчик |//+------------------------------------------------------------------+class CCounter
{
private:
//--- Шаг счётчикаint count;
//--- Счётчик int chekcount;
//--- int m_pause;
public:
//--- Проверяет прохождение указанного временного интервала int CheckCounter(constint pause);
void ZeroCounter(void){count=0;chekcount=0;}
};
//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+int CCounter::CheckCounter(constint pause)
{
m_pause=pause;
count++;
Print(" Class count= ",count);
Print(" Class pause= ",pause);
Print(" Class m_pause= ",m_pause);
if(count>=chekcount+m_pause)
{
chekcount=count;
}
return(chekcount);
}
//+------------------------------------------------------------------+
Estou tentando descobrir meu contador e reescrevê-lo em classes, mas ainda não consigo produzir as funções paralelas de trabalho. Acho que a m_pause deve ser declarada de forma diferente. Como deve ser feito corretamente?
Você precisa verificá-lo no temporizador.
E deveria haver dois objetos CCounter - cada um para um contador diferente.
Obrigado, mas não entendo porque o temporizador precisa verificar? Para cada tique, o Expert Advisor acessa o CCounter e conta os tiquetaques "count++".
E deve haver dois objetos CCounter - cada um para seu contador.
Não tenho certeza do que você quer dizer com "dois objetos CCounter". Li o artigo https://www.mql5.com/ru/articles/351, que diz: "Uma vez carregada, a classe se torna um objeto". Isso significa que terei que fazer cópias das aulas para cada balcão? Então, acontece as mesmas cópias com nomes diferentes que eu posso fazer sem aulas? O objetivo era se livrar da cópia usando classes, porque preciso de mais de uma centena delas. Disseram-me que é possível fazê-lo com uma aula, então comecei a brincar com as aulas. Ou o que eu estou dizendo sobre "dois objetos CCounter"?
Preso, me parece, em um lugar tão simples. O que fazer com int chekcount global=0; int count=0; no caso de eu querer executar várias funções de contador() em paralelo?
Basta usar uma classe ou fazer cópias de funções com nomes diferentes.
На самом деле все намного проще. Чтобы пользоваться ООП вовсе не нужно знать, что означают эти слова - можно просто использовать предоставляемые ООП возможности, даже не зная как они называются. Но все же, надеюсь, в процессе прочтения статьи все желающие не только научатся использовать ООП в достаточной мере, но и разъяснят себе значения этих...
Não tenho certeza do que você quer dizer com "dois objetos CCounter". Li o artigo https://www.mql5.com/ru/articles/351, que diz: "Uma vez carregada, a classe se torna um objeto". Isso significa que eu tenho que fazer cópias das aulas para cada balcão? Então, acontece as mesmas cópias com nomes diferentes que eu posso fazer sem aulas? O objetivo era se livrar da cópia usando classes, porque preciso de mais de uma centena delas. Disseram-me que é possível fazê-lo com uma aula, então comecei a brincar com as aulas. Ou o que eu estou dizendo sobre "dois objetos CCounter"?
Como posso criar uma matriz unidimensional dos preços de todos os pedidos abertos? Esta é provavelmente uma pergunta muito simples para você, mas por favor informe)
Estou tentando descobrir meu contador e reescrevê-lo em classes, mas ainda não consigo produzir as funções paralelas de trabalho. Acho que a m_pause deve ser declarada de forma diferente. Como deve ser feito corretamente?
Estou tentando descobrir meu contador e reescrevê-lo em classes, mas ainda não consigo produzir as funções paralelas de trabalho. Acho que a m_pause deve ser declarada de forma diferente. Como deve ser feito corretamente?
Você precisa verificá-lo no temporizador.
E deveria haver dois objetos CCounter - cada um para um contador diferente.
O temporizador tem que ser verificado.
Obrigado, mas não entendo porque o temporizador precisa verificar? Para cada tique, o Expert Advisor acessa o CCounter e conta os tiquetaques "count++".
Obrigado, mas não entendo porque o temporizador precisa ser verificado? Para cada tic tac, a EA acessa o CCounter e conta os ticks "count++".
Portanto, não está no temporizador...
E deve haver dois objetos CCounter - cada um para seu contador.
Não tenho certeza do que você quer dizer com "dois objetos CCounter". Li o artigo https://www.mql5.com/ru/articles/351, que diz: "Uma vez carregada, a classe se torna um objeto". Isso significa que terei que fazer cópias das aulas para cada balcão? Então, acontece as mesmas cópias com nomes diferentes que eu posso fazer sem aulas? O objetivo era se livrar da cópia usando classes, porque preciso de mais de uma centena delas. Disseram-me que é possível fazê-lo com uma aula, então comecei a brincar com as aulas. Ou o que eu estou dizendo sobre "dois objetos CCounter"?
Preso, me parece, em um lugar tão simples. O que fazer com int chekcount global=0; int count=0; no caso de eu querer executar várias funções de contador() em paralelo?
Basta usar uma classe ou fazer cópias de funções com nomes diferentes.
Não tenho certeza do que você quer dizer com "dois objetos CCounter". Li o artigo https://www.mql5.com/ru/articles/351, que diz: "Uma vez carregada, a classe se torna um objeto". Isso significa que eu tenho que fazer cópias das aulas para cada balcão? Então, acontece as mesmas cópias com nomes diferentes que eu posso fazer sem aulas? O objetivo era se livrar da cópia usando classes, porque preciso de mais de uma centena delas. Disseram-me que é possível fazê-lo com uma aula, então comecei a brincar com as aulas. Ou o que eu estou dizendo sobre "dois objetos CCounter"?
Basta usar uma classe, ou fazer cópias de funções com nomes diferentes.
Basta criar tantos objetos de classe quantos forem necessários. E use cada um deles para sua contagem.
Obrigado, vou ler o que é este CArrayObj e tentar descobrir o que é. :)
Como posso criar uma matriz unidimensional dos preços de todos os pedidos abertos? Esta é provavelmente uma pergunta muito simples para você, mas por favor informe)
Como posso criar uma matriz unidimensional dos preços de todos os pedidos abertos?
Percorra todos os pedidos em loop e escreva os preços em aberto na matriz.
Percorra todos os pedidos do loop e escreva os preços de abertura na matriz.
Obrigado!