Erreurs, bugs, questions - page 1088
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
Si vous avez des lignes similaires au début de votre fichier
#include <File.mqh>, il est probable que ces fichiers include aient été modifiés depuis votre dernière compilation, par vous ou par quelqu'un d'autre.
Il n'y a pas de fichiers d'inclusion.
Il n'y a pas de fichiers de plug-in.
Pourquoi l'erreur"array out of range" se produit-elle lorsqu'on essaie de placer quelque chose dans un tableau dynamique? Il s'agit d'un tableau dynamique.
Tableau B1[] Défini comme le tampon indicateur correspondant
SetIndexBuffer(0,B1,INDICATOR_DATA) ; ArraySetAsSeries(B1,true) ;
La taille du tableau n'est clairement pas contrôlée par l'utilisateur ici.
Pourquoi l'erreur"array out of range" se produit-elle lorsqu'on essaie de placer quelque chose dans un tableau dynamique? C'est un tableau dynamique.
Pourquoi l'erreur"array out of range" se produit-elle lorsqu'on essaie de placer quelque chose dans un tableau dynamique? C'est dynamique.
(fcplm)
Qui va l'enfermer ? ! C'est un monument !
Erreur de plate-forme.
Si, lors du remplissage du tableau B1 du tampon de l'indicateur, la procédure SetIndexBuffer(0,B1,INDICATOR_DATA) est appelée à plusieurs reprises,
Par exemple, lors de l'initialisation de l'indicateur, la tentative suivante d'écrire quelque chose dans le tableau B1 provoque l'erreur"array out of range".
Lorsque l'on appelle une fois la procédure SetIndexBuffer(0,B1,INDICATOR_DATA), tout fonctionne bien.
Il n'y en avait pas avant.
Erreur de plate-forme.
Si, lors du remplissage du tableau B1 du tampon de l'indicateur, la procédure SetIndexBuffer(0,B1,INDICATOR_DATA) est appelée de manière répétée,
par exemple, lors de l'initialisation de l'indicateur, la tentative suivante d'écrire quelque chose dans le tableau B1 provoque l'erreur"array out of range".
Lorsqu'un seul appel de la procédure SetIndexBuffer(0,B1,INDICATOR_DATA) se produit, tout fonctionne bien.
Ça ne s'est pas produit avant.
Mais pourquoi le faites-vous de manière répétée ?
Lier un tampon signifie le vider et le préparer à une liaison dynamique pour les calculs ultérieurs. Si vous l'appelez une deuxième fois, le tampon précédent sera effacé et ne sera rempli que lors du prochain appel du recalcul de l'indicateur.
Pourquoi faites-vous cela de manière répétée ?
La liaison du tampon signifie son effacement et la préparation de la liaison dynamique pour les calculs suivants. Si vous l'appelez une deuxième fois, le tampon précédent sera effacé et ne sera rempli que lors du prochain appel du recalcul de l'indicateur.
Il s'agissait de l'initialisation complète standard de l'indicateur, qui a lieu lorsque l'indicateur est lancé pour la première fois et qui est effectuée via Oninit().
Parfois, lorsque vous mettez à jour l'historique, etc.
Personne n'a jamais pensé que l'initialisation répétée de l'indicateur via Oninit() entraînerait l'arrêt de la réponse des tableaux.
Il s'agissait de l'initialisation complète standard de l'indicateur, qui est effectuée lors de son premier démarrage et est réalisée via Oninit().
Parfois, lorsque l'historique est mis à jour, etc.
Personne n'a jamais pensé que l'initialisation répétée de l'indicateur via Oninit() entraînerait l'arrêt de la réponse des tableaux.
Pour quoi faire ?
"SetIndexBuffer lie le tampon d'indicateur spécifié au tableau dynamique unidimensionnel".
Est-ce que vous liez les tampons à d'autres tableaux lorsque vous mettez à jour l'historique ?