Erros, bugs, perguntas - página 1422

 

Mihail Matkovskij, 2015.11.01 12:55

Não posso actualizar o terminal para construir o 902, costumava actualizar, mas agora não o posso fazer durante 3 dias. Versão: 4; construção: 890; taxa de bits: 32. Qual poderá ser a razão?

O que é que não está a funcionar exactamente? O que estás a fazer e o que recebes? Que tipo de erros?
 

Erro durante a execução

class A { public:
        virtual bool    g() { Print( __FUNCTION__ ); return true; }
        virtual bool    f() { return g(); }
};
class B : public A { public:
        virtual bool    g() { Print( __FUNCTION__ ); return true; }
};
void OnStart()
{
        int i = 0;
        for ( B b; b.f(); i++ )
                if ( i++ >= 3 )
                        break;
}                

Resultado: e deve ser:

 
Karputov Vladimir:
O que é que não está a funcionar exactamente? O que estás a fazer e o que estás a receber? Quais são os erros?

Uma vez que o registo é confidencial, estou a enviar-lho numa mensagem privada.

 
A100:

Fuga de memória.


A100, você é um grande apanhador de insectos!!! Continuem assim! Tire o chapéu para si :)

 
Stanislav Korotky:
Este é o MT4. Tenho vindo a experimentar nos últimos dias. Construir 902/32.

Experimentei o vosso exemplo no MT4/891/32 com diferentes compiladores (build: 1174, 1210)

Qualquer uma das duas actualizações... ou recuar.

 
sigma7i:

A100, você é um grande apanhador de insectos!!! Continuem assim! Tire o chapéu para si :)

Assim, é possível ver de imediato quem realmente utiliza as capacidades do OOP e quem é um mestre do raciocínio sobre este assunto (existe todo um ramo de mestres).

Fórum sobre comércio, sistemas comerciais automatizados e teste de estratégias comerciais

AOP por amor de Deus....

George Merts, 2015.10.26 19:58

Só não se sabe como cozinhá-lo.

O OOP é muito benéfico tanto para a estruturação de programas como para a capacidade de o apoiar e modificar.

Especialmente porque diz que "usa classes como recipientes para funções" - bem, coloque os dados que funcionam com essas funções dentro desse recipiente - e é isso, OOP em acção.


 
A100:

A única maneira de se livrar deste erro é substituir Optimize=1 no metaeditor.ini por 0

Não preciso realmente de me livrar dele, mas talvez os criadores o façam. Afinal, tais erros não devem sequer ocorrer na compilação se o compilador funcionar bem. Foi por isso que lhe dei uma amostra exacta do código quando este ocorreu.
 
Ilya Malev:
Foi por isso que dei o exemplo exacto do código quando ele aparece.
Na construção 1210/32 não pode ser repetido
Certo?
void OnStart()
{
        ENUM_TIMEFRAMES tf=NULL;
        if(tf==NULL)   tf=Period();
}
 
A100:

Experimentei o vosso exemplo no MT4/891/32 com diferentes compiladores (build: 1174, 1210)

Qualquer uma das duas actualizações... ou recuar.

Não. O Service Desk diz sempre "actualizar para a construção mais recente". (o que, claro, deveria ser correcto, se apenas estivessem a corrigir bugs). Detectei o problema no build 900, e depois actualizei-o para 902. Aparentemente, o problema surgiu devido à adição de modelos de classes. Enquanto os modelos vão "dançar" durante algum tempo, penso que é melhor não os utilizar de todo.

 
A100:
Não há repetição na construção 1210\32
Será isso correcto?