![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
faux - il n'y a pas d'initialisation
Voici une preuve de l'aide
Les variables globales sont initialisées une seule fois, juste après le chargement du programme dans la mémoire du terminal client.
il ne s'agit pas d'initialisation, il s'agit de changer une variable
veuillez lire le code avec attention
Vous avez toujours la condition StringVal != backup et firsttime sera toujours vrai, parce qu'il (init) n'est démarré qu'une seule fois CHAQUE fois que l'EA est démarré, et un nouveau démarrage se produit lorsque vous changez la fenêtre tf, lorsque vous changez le set lorsque vous démarrez le terminal.
Ce n'est pas ce que vous voulez dire.
parce que vous n'avez pas lu les messages attentivement.
Le problème se produit lorsque la chaîne externe Value
la deuxième variable change également lorsque la première change
tout le temps
il ne doit être modifié qu'une seule fois
Et écrivez la raison de la désinitialisation dans init() dans le journal. Vous comprendrez alors pourquoi l'initialisation a lieu.
de quoi parlez-vous ?
oublier l'initialisation
Prenons le dernier exemple sans init() et sans test
Pourquoi dites-vous des bêtises si vous ne comprenez pas ce que je veux dire ?
de quoi parlez-vous ?
oublier l'initialisation
prenez le dernier exemple sans init() et testez-le
Pourquoi dites-vous des bêtises si vous ne comprenez pas ce dont nous parlons ?
Soit vous vous cassez encore le cou, soit vous lisez pourquoi les variables sont initialisées lorsque les paramètres d'entrée sont modifiés.
"... Les variables globales sont initialisées une seule fois après le chargement du programme dans la mémoire du terminal client... "
Ce que vous avez souligné en rouge et l'épaisseur de la police - cela ne vous donne pas la garantie qu'après avoir changé la valeur d'une variable externe, elle ne s'initialisera pas à nouveau comme elle l'a fait au premier démarrage. Vous pouvez même modifier la taille de la police dans les messages. Mais l'initialisation aura toujours lieu, même si vous supprimez init() du programme.
ce n'est pas ce que vous voulez dire
parce que vous n'avez pas lu le message attentivement.
Le problème se produit lorsque la chaîne externe Value est modifiée
et la deuxième variable change également lorsque la première est modifiée
tout le temps
et ne doit être modifié qu'une seule fois
une fois CHAQUE fois que l'EA est lancé, et il est lancé chaque fois que vous modifiez cette variable et appuyez sur OK.
que voulez-vous dire par "charger un programme dans la mémoire du terminal client..."Quand avez-vous compilé le code ?
Soit vous continuez à casser vos lances, soit vous lisez pourquoi les variables sont initialisées lorsque les paramètres d'entrée sont modifiés.
"... Les variables globales sont initialisées une fois, immédiatement après le chargement du programme dans la mémoire du terminal client... "
Ce que vous avez souligné en rouge et l'épaisseur de la police - cela ne vous donne pas la garantie qu'après avoir changé la valeur d'une variable externe, elle ne s'initialisera pas à nouveau comme elle l'a fait au premier démarrage.
pourquoi répondre si vous ne lisez pas attentivement vos messages ?
2. la variable n'est pas initialisée, elle prend la valeur 1.
Si vous êtes trop paresseux pour le tester, ne perdez pas votre temps.
Si vous voulez aider, je vous en serai reconnaissant !
Lisez attentivement vos messages et testez-les.
Où avez-vous trouvé ça ?
elle ne garantit pas qu'après avoir changé la valeur d'une variable externe, elle ne se réinitialisera pas comme à la première exécution.
Je n'ai pas encore vu de réinitialisation des variables globales.
Pourquoi répondre si vous ne lisez pas attentivement les messages ?
2. la variable n'est pas initialisée mais prend la valeur 1.
Si vous êtes trop paresseux pour le tester, ne perdez pas votre temps.
Si vous voulez aider, je vous en serai reconnaissant !
Lisez attentivement vos messages et testez-les.
Où avez-vous trouvé ça ?
elle ne garantit pas qu'après avoir changé la valeur d'une variable externe, elle ne se réinitialisera pas comme à la première exécution.
Je n'ai pas encore vu de réinitialisation des variables globales.
que voulez-vous dire par "charger le programme dans la mémoire du terminal client..." ?"C'est quand vous avez compilé le code ?
dans ce cas aussi
Vous voulez dire quand le programme est attaché au graphique pour la première fois.
mais je vais le répéter.
il ne s'agit pas d'initialisation
lire ci-dessus.
Lorsque vous modifiez une variable externe, l'EA est redémarré. Je vous ai suggéré d'afficher les raisons de la désinitialisation dans le journal. Vous avez choisi de ne pas le faire.
Pourquoi ?
que fera-t-il pour moi ?
Je sais pourquoi la désinitialisation se produit
Je change la variable externe
dans ce cas aussi.
c'est la première fois que le programme est attaché au tableau
mais je vais le répéter.
Il ne s'agit pas d'initiation.
lire ci-dessus
Vlad, il y a une erreur ici, l'initialisation a lieu chaque fois que vous modifiez les paramètres externes. Et c'est exactement le but, si c'est à propos de l'inite.