Erreurs, bugs, questions - page 2902

 
Aleksey Vyazmikin:

J'ai des problèmes avec les tables depuis un certain temps maintenant, qu'est-ce que je fais mal ?


Il s'avère que le tableau n'a pas besoin d'être mis en évidence !

 
Igor_Gagarin:

mt5 build 2667 (même chose sur 2660)

Un agent de test a arrêté de tester, le pourcentage d'achèvement passe au-dessus de 100, le temps d'exécution/de fin augmente. Les autres ont fini leur partie.

Cela se produit parfois avec 2 ou 3 agents.

L'utilisation du CPU reste au même niveau.

La consommation de mémoire reste parfois la même, parfois elle diminue.

La consommation de mémoire est de 800 Mo par agent, en fonctionnement normal.

Rien d'inhabituel dans les journaux des agents, rien d'inhabituel non plus dans les journaux du terminal.

Si le service d'agent est redémarré, il effectuera quelques passages et écrira dans un état "prêt", avec moins que le nombre de travaux terminés que la file d'attente.

Un deuxième redémarrage ne fait rien.

Si j'utilise des agents locaux et non des agents de réseau, la situation se répète.

Le bug est peut-être lié au nombre de paramètres de test (73 dans ce cas).


upd. est resté comme ça pendant quelques heures, puis a lancé les agents inactifs 2-3 travaux chacun, l'un d'entre eux est maintenant dans le même état.

Mise à jour du terminal à 2670. Tout semblait être rentré dans l'ordre, mais après 90 heures de tests et environ 15 000 passages, un agent a de nouveau eu un problème.
 
Dans un cas, il s'agit d'une erreur de compilation, dans l'autre, non.
class A {
        static int i1[];
        static int i2[];
};
int A::i1[] = { 1,2,3 }; //(1) нормально
int A::i2[3];            //(2) Error: 'i2' - redefinition; different type modifiers
Quelle est la différence fondamentale entre (1) et (2) ?
 
Qu'est-ce que c'est que ce *** ? Pourquoi je ne peux pas répondre dans le sujet du MetaTrader 5 Python User Group - comment utiliser Python dans Metatrader

P.S. En plus, je ne peux pas ajouter ce sujet aux Favoris !!!! C'est quoi ce bordel ?
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
MetaTrader 5 Python User Group - как использовать Python в Метатрейдере
  • 2019.03.13
  • www.mql5.com
Мы готовим модуль MetaTrader 5 для Python...
 
A100:
Dans un cas, il y a une erreur de compilation, dans l'autre cas, il n'y en a pas. Quelle est la différence fondamentale entre (1) et (2) ?

Il n'est pas possible de déterminer la dimensionnalité par elle-même, mais seulement en initialisant les éléments du tableau.

 
Valeriy Yastremskiy:

Comme si vous ne pouviez pas déterminer la dimension elle-même, seulement en initialisant les éléments du tableau.

Et pourquoi pas ? Quelles sont les principales restrictions ? Il se compile en C++ sans erreur, ce qui vous permet de

 
A100:

Pourquoi pas ? Quelles sont les principales restrictions ? Il se compile en C++ sans erreur - donc vous pouvez.

Il semble que ce soit un défaut du compilateur. Il y a une définition de la taille là aussi et pour la deuxième fois, c'est une erreur - il ne tient pas compte du fait qu'il s'agit d'une taille dynamique et il tient seulement compte du fait qu'il y avait déjà une définition de la taille. L'erreur le dit explicitement.

 
A100:

En C++, il se compile sans erreur, vous pouvez donc

en mql [] sans taille est un tableau dynamique, c'est la différence

 
TheXpert:

en mql [] sans taille est un tableau dynamique, c'est la différence

A::i1 est un tableau statique - j'ai vérifié avec ArrayIsDynamic - résultat : false

 
A100:

A::i1 est un tableau statique - j'ai vérifié avec ArrayIsDynamic - résultat : false

Et l'intérêt de la deuxième entrée en général ? Pourquoi la taille ne peut-elle pas être définie directement dans la déclaration ?

en général, si la taille du cas statique dans (1) est sortie implicitement, pourquoi pas dans le deuxième cas également ?

Raison: