Versão Beta do MetaTrader 4 IDE incluindo o novo compilador e editor MQL4 - página 7

 
MetaQuotes:

1. Mencionamos os parâmetros em start/init/deinit porque eles nunca deveriam estar lá, mas encontramos exemplos de código fonte onde os autores adicionaram parâmetros desnecessários por engano. Na antiga MQL4 era pulada sem som, enquanto na MQL5 já é relatada como um erro. Não há problema aqui - apenas um erro muito raro será imediatamente visível.

2. Se você tiver enfrentado problemas com DLL e passagem de arrays de cordas multidimensionais para DLL, eles ficarão tranquilos. Os desenvolvedores têm todas as possibilidades de trabalhar com estruturas e não há necessidade de construir muletas sobre cordas.

A nova versão da MQL4 oferece muitas características novas, mantendo a compatibilidade.

1. Tenho muitos onde este recurso é utilizado. Eu não acho que sou o único.

2. Destacado é ótimo! Mas deixe a compatibilidade com o antigo!

MetaCotações:

Não há necessidade de entrar em pânico. Faça o download do pacote IDE+MQL oferecido e verifique seus desenvolvimentos.

O compilador agora tem um analisador muito bom e dá facilmente avisos sobre misturas perigosas de expressões lógicas. Por favor, tente você mesmo.

Isso também é ótimo! Os códigos na Base de Código não foram escritos apenas por profissionais. Certamente não há parênteses em expressões lógicas. Estes códigos não vão funcionar. Faça uma chave para que o compilador pule pelas regras antigas.
 
MetaQuotes:

Aqueles que lutaram com DLL, e mesmo com a passagem de arrays de cordas multidimensionais para DLL, pelo contrário, respiram um suspiro de alívio. Os desenvolvedores serão capazes de trabalhar com estruturas e não precisarão mais construir muletas sobre cordas.

Por que muletas? O que há de errado com um conjunto de cordas? A propósito, li este parágrafo de forma incorreta no início, e acontece que se trata de matrizes de cordas, não apenas de matrizes multidimensionais. Como poderia ser assim? Como você sugere substituir a matriz que está sendo passada com a estrutura? Por exemplo, você deve fazer o seguinte para um conjunto de 1000 cordas

Estrutura StrStruct { string a1; string a2; string a3; .... string a1000; } A; E então cada membro deve ser inicializado? Isto é um absurdo.

A nova versão da MQL4 oferece muitas características novas, mantendo a compatibilidade.

Somente a compatibilidade não é completa.
 
Meat:

Por que muletas? O que há de errado com um conjunto de cordas? A propósito, eu não li este ponto com atenção no início, e acontece que não se trata apenas de matrizes multidimensionais, mas de matrizes de cordas em geral. Como poderia ser assim? Como você sugere substituir a matriz que está sendo passada com a estrutura? Por exemplo, você deve fazer o seguinte para um conjunto de 1000 cordas

estrutura A { string a1; string a2; string a3; ..... string a1000; }; E então cada membro deve ser inicializado? Isto é um absurdo.

Somente a compatibilidade não é completa.


Uma estrutura é passada como um fio e é totalmente equivalente a ela. Qualquer operação na corda é aplicável à estrutura.
 
Zhunko:

1. e quanto a isso?!

Muito verdadeiro, a propósito, para formar. Não é uma característica subcomentada. Eu também costumava usá-lo muito.
 
tara:

Uma estrutura é passada como um fio e é totalmente equivalente a ela. Qualquer operação em uma corda é aplicável à estrutura.

Eu não entendo. O que você quer dizer?
 
Meat:

Eu não entendo. O que você quer dizer?

Em termos de banco de dados, os campos se fundem. Elas se fundem.
 
tara:

No caso de bancos de dados, os campos se fundem. Eles são fundidos.
Não faz nenhum sentido. O que são as bases de dados? De onde eles vêm na MQL? Aqui temos uma matriz: cadeia A[1000]; Como passá-la para a DLL?
 
Meat:
Não faz nenhum sentido. Que outros bancos de dados existem? De onde eles vêm na MQL? Aqui temos uma matriz: cadeia A[1000]; como ela pode ser passada para a DLL?


Alexey, se você tiver uma matriz de cordas bidimensional, você pode facilmente substituí-la por uma matriz unidimensional de estruturas.

A propósito, seria uma combinação mais expressiva :)

 

A Vadik está apenas zangada com a inevitável competição. ;) // imha auto-sabotagem

Antes era uma "panaceia" com suas bibliotecas, mas agora elas serão muito menos procuradas - quase tudo pode ser feito sem elas, e muito do que não pode ser feito pode ser encontrado pronto em kodobase no mql5.com

Vadim, procure os profissionais, há ordens de magnitude a mais.

 
MetaDriver:

A Vadik está apenas zangada com a inevitável competição. ;) // imha auto-sabotagem

Antes era uma "panaceia" com suas bibliotecas, mas agora elas serão muito menos procuradas - quase tudo pode ser feito sem elas, e muito do que não pode ser feito pode ser encontrado pronto em kodobase no mql5.com

Vadim, procure os profissionais, há ordens de magnitude a mais.

Seu código está "mais próximo do ponto". Raramente há algo no domínio público que "não mereça ser refazido".