Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 862
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Por falar em cubos!
Você pode me dizer como apagar um "cubo" desnecessário?
Por falar em cubos!
Você pode me dizer como apagar um "cubo" desnecessário?
Para isso, você precisa saber em que posição se encontra esse "cubo", quantos bytes ele ocupa, reescrever um ponteiro de arquivo ali e escrever um novo valor naquele lugar.
Consequentemente, se as cordas têm comprimentos diferentes, simplesmente não é realista. Não será possível calcular quantos bytes para o "cubo" requerido.
Para fazer isso, você precisa saber em que posição está esse "cubo" e quantos bytes ele ocupa, depois embrulhe o ponteiro do arquivo ali e escreva o novo valor naquele lugar.
Consequentemente, se as cordas têm comprimentos diferentes, simplesmente não podemos fazer isso. Será impossível calcular quantos bytes para o "cubo" correto.
Obviamente, todos estes cálculos irão aumentar o tempo de processamento.
Procurarei outros métodos.
Obrigado.
Para fazer isso, você precisa saber em que posição está este "cubo" e quantos bytes ele ocupa, reescrever um ponteiro de arquivo ali e escrever um novo valor neste lugar.
Consequentemente, se as cordas têm comprimentos diferentes, isso simplesmente não pode ser feito. Será impossível calcular quantos bytes para o "cubo" desejado.
Se não for crucial e você puder usar o WinApi, então acho que a tarefa pode ser resolvida através do FileMapping.
Vou tentar de tudo. Vou começar criando um arquivo "vazio", com variáveis abstratas para a reserva. Em seguida, vou substituí-lo pelos dados que obtiver.
Talvez funcione. O único problema é o tamanho do arquivo, que pode ficar maior. Terei que criar um novo backup antes de cada leitura.
Procurando artigos sobre o uso denovo operador em mql4, aconselhar tais artigos? Já vi muitos vídeos e li o arquivo de ajuda muitas vezes, mas não entendo o significado das aulas.
o novo operador na MQL só é necessário para criar um ponteiro para uma instância de objeto
Os programas MQL são bastante especializados e o OOP é principalmente adequado para encapsulamento, dei um exemplo da classeCWorkTime acimahttps://www.mql5.com/ru/forum/160683/page861#comment_11840254
é conveniente usar o encapsulamento para fazer vários casos de objeto com limite de tempo, como este:
ou seja, no meu exemplo, você pode agora especificar 2 intervalos de tempo de trabalho da EA
SZY: leia - seção de artigos do fórum de busca "Objetos".
É claro que em maior medida as classes compõem variáveis e funções de dados, e na medida restante provavelmente fazem algo poderoso se eu entender corretamente, porque tudo pode ser organizado por funções, talvez as classes funcionem mais rápido que as funções, você tem acesso mais rápido aos dados, eu li nos fóruns que eles usam a memória de forma mais uniforme e econômica e tudo isso.
Por que este código não funciona?
Talvez a classe deva ser descrita com dois pontos ::? A idéia é criar um ponteiro que aponte para outro ponteiro.
Olá!
Mais uma vez obrigado aAlexey Viktorov pela dica sobre as citações - tudo funciona. Nesta segunda-feira temos uma situação - os alemães negociaram, enquanto os ingleses têm um dia de folga. Acontece que em condições para a abertura da posição do euro foram utilizados valores antigos de libra esterlina. Daí o pedido: aconselhe como estabelecer a verificação no código de que ambos os símbolos são negociados neste dia?
Obrigado.