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
Isto poderia ser mais semântico do que um bug.
O objetivo do ObjectDelete é "remover o objeto com o nome especificado".
Ao final da execução da função, ainda há um objeto chamado "Objeto não-existente" no gráfico? Não... Então, este sucesso é um sucesso?
Olhando de outra forma, o ObjectDelete removeu um objeto chamado "Objeto Não Existente"? Não... então este fracasso é um fracasso?
Você mede o sucesso pelo resultado ou pela ação tomada?
Talvez um falso seria esperado se o objeto nomeado permanecesse no gráfico após a execução da função. Caso contrário, foi um sucesso.
sim, vou escrevê-lo. Eu estava esperando sua confirmação. obrigado.
Tentei apenas informar no Service Desk e ele não está aceitando minha mensagem, dizendo "Erro ao salvar dados".
Tentei também de um local diferente, PC e navegador (usando meu VPS) e o mesmo aconteceu.
Você foi capaz de relatar em sua ponta?
Isto poderia ser mais semântico do que um bug.
O objetivo do ObjectDelete é "remover o objeto com o nome especificado".
No final da execução da função, ainda há um objeto chamado "Objeto não-existente" no gráfico? Não... Então, este sucesso é um sucesso?
Olhando de outra forma, o ObjectDelete removeu um objeto chamado "Objeto Não Existente"? Não... então este fracasso é um fracasso?
Você mede o sucesso pelo resultado ou pela ação tomada?
Talvez um falso seria esperado se o objeto nomeado permanecesse no gráfico após a execução da função. Caso contrário, foi um sucesso.
Se este for o caso, então a diferença de funcionalidade entre MQL4 e MQL5 não é relatada ou explicada na documentação!
De acordo. Só estou curioso para saber qual "eles" dirão que está correto :-)
Pessoalmente, acho que é melhor voltar a ser verdade. Caso contrário, é preciso acrescentar um código extra para verificar a existência do objeto, caso contrário, serão cometidos 4202 erros.
De acordo. Só estou curioso para saber qual "eles" dirão que está correto :-)
Pessoalmente, acho que é melhor voltar a ser verdade. Caso contrário, é preciso acrescentar um código extra para verificar a existência do objeto, caso contrário, serão cometidos 4202 erros.
Na minha opinião, em ambos os casos é preciso verificar a existência do objeto antes de excluí-lo, independentemente da versão "correta".
EDIT: Entretanto, espero que eles "consertem" para que funcione da mesma forma que a MQL4. Caso contrário, haverá ainda outra diferença na funcionalidade na qual precisaremos colocar a compilação condicional em código feito para compilar em ambas as versões.
Na minha opinião, em ambos os casos é necessário verificar a existência do objeto antes de excluí-lo, independentemente da versão "correta".
Interessante! Por que você precisaria verificar se ela existe, se você quer que ela desapareça?
O tempo necessário para verificar se um objeto inexistente existe é largamente comparável à tentativa de apagar um objeto inexistente no MT4 (e uma inspeção rápida no MT5 mostra que ele é substancialmente mais lento), então não consigo ver nenhum benefício tangível de desempenho ao executar a verificação. Mas ele adicionará mais linhas ao seu código.
EDIT: Entretanto, espero que eles "consertem" para que funcione da mesma forma que a MQL4. Caso contrário, haverá ainda outra diferença na funcionalidade na qual precisaremos colocar a compilação condicional em código feito para compilar em ambas as versões.
Interessante! Por que você precisaria verificar se ela existe, se você quer que ela desapareça?
O tempo necessário para verificar se um objeto inexistente existe é largamente comparável à tentativa de apagar um objeto inexistente no MT4 (e uma inspeção rápida no MT5 mostra que ele é substancialmente mais lento), então não consigo ver nenhum benefício tangível de desempenho ao executar a verificação. Mas ele adicionará mais linhas ao seu código.
Quando você quiser detectar se o usuário o apagou acidentalmente e precisa ser recriado. Eu quis dizer isto como uma "limpeza" geral e não por uma única vez apenas a funcionalidade de exclusão.
Mas sim, eu concordo, para uma funcionalidade"OnDeinit()", não há necessidade de testá-la primeiro.
Quando se deseja detectar se o usuário o apagou acidentalmente e precisa ser recriado. Eu quis dizer isto como "limpeza doméstica" geral e não por uma única vez apenas a funcionalidade de apagar.
Mas sim, eu concordo, para uma funcionalidade"OnDeinit()", não há necessidade de testá-la primeiro.
Ah, estou vendo.
Como uma nota lateral:
void OnStart()
{
string name = "MysteryObject";
ulong begin;
begin = GetMicrosecondCount();
for(int i=0; i<1000; i++) int result = ObjectFind(0,name);
printf("ObjectFind took %i μs", GetMicrosecondCount()-begin);
begin = GetMicrosecondCount();
for(int i=0; i<1000; i++) bool result = ObjectDelete(0,name);
printf("ObjectDelete took %i μs", GetMicrosecondCount()-begin);
}
Executando-o no MT4 não há muito nele.
Executando-o no MT5 É mais de 50 vezes mais lento.
Alguém tem alguma idéia do porquê?
Como uma nota lateral:
Executando-o no MT4 não há muito nele.
Executando-o no MT5 É mais de 50 vezes mais lento.
Alguém tem alguma idéia do porquê?