Erreurs, bugs, questions - page 1160
![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
Quelle pourrait être la raison ? Est-ce que je choisis le mauvais serveur ? J'ai téléchargé les plateformes du courtier Alpari.
Pouvez-vous suggérer une solution ?
v4.3, firmware personnalisé.
La fenêtre principale est en position paysage, les autres boîtes de dialogue (commandes) sont en position portrait. Passage incontrôlable et ennuyeux de la fenêtre principale aux boîtes de dialogue.
Ce problème se posait-il sur le firmware officiel ? Si ce n'est pas le cas, essayez de modifier les paramètres de l'écran dans le micrologiciel personnalisé.
Une demande aux développeurs. Veuillez ajouter une fonction pour obtenir la valeur de la taille de réserve d'un tableau spécifié, c'est-à-dire ArrayReserveSize(array). Sinon, il y a un inconvénient, si nous passons ce tableau à une fonction, qui peut changer sa taille, mais ne sait rien de son reserve_size, et en conséquence nous avons une réallocation de mémoire inutile.
Ou nous pouvons faire en sorte que si dans la fonction ArrayResize le troisième paramètre spécifie -1 (c'est-à-dire ArrayResize(array, size, -1)), la valeur reserve_size précédente est utilisée.
Et idéalement, nous avons besoin des fonctions ArrayCapacity et ArraySetCapacity pour contrôler explicitement la taille de la mémoire allouée au tableau.
Un souhait aux développeurs. Veuillez ajouter une fonction pour obtenir la valeur de la taille de réserve d'un tableau spécifié, c'est-à-dire ArrayReserveSize(array). Sinon, il y a un inconvénient, si nous passons ce tableau à une fonction, qui peut changer sa taille, mais ne sait rien de son reserve_size, et en conséquence nous avons une réallocation de mémoire inutile.
Alternativement, nous pouvons faire en sorte que si la fonction ArrayResize spécifie -1 comme troisième paramètre (c'est-à-dire ArrayResize(array, size, -1)), la valeur reserve_size précédente est utilisée.
Et idéalement, vous avez besoin des fonctions ArrayCapacity et ArraySetCapacity pour contrôler explicitement la taille de la mémoire allouée au tableau.
Et qu'est-ce qui vous empêche de déclarer une constante de cette façon :
#define MY_RESERVE_SIZE = 1000
Et qu'est-ce qui vous empêche de déclarer une constante de cette manière :
#define MY_RESERVE_SIZE = 1000
Pourquoi faut-il déclarer une constante ? La valeur peut être récupérée au moment de l'exécution. De plus, la fonction peut être universelle, non liée à votre tableau spécifique, et peut être située dans un module/bibliothèque distinct, de sorte que votre macro n'est pas du tout pertinente.
Mais ce n'est pas la question. Jusqu'à présent, nous devons nous contenter de cela : soit nous créons une variable supplémentaire pour stocker la valeur, soit nous la transmettons à une fonction en tant que paramètre distinct. Et tout cela n'est qu'une danse supplémentaire du tambourin, ce dont nous parlons.
Une demande aux développeurs. Veuillez ajouter une fonction pour obtenir la valeur de la taille de réserve d'un tableau spécifié, c'est-à-dire ArrayReserveSize(array). Sinon, il y a un inconvénient, si nous passons ce tableau à une fonction, qui peut changer sa taille, mais ne sait rien de son reserve_size, et en conséquence nous avons une réallocation de mémoire inutile.
Ou nous pouvons faire en sorte que si dans la fonction ArrayResize le troisième paramètre spécifie -1 (c'est-à-dire ArrayResize(array, size, -1)), la valeur reserve_size précédente est utilisée.
Et idéalement, nous avons besoin des fonctions ArrayCapacity et ArraySetCapacity pour contrôler explicitement la taille de la mémoire allouée au tableau.
Il existe une classe standard CArray et ses dérivés pour ces tâches. Les liaisons de services doivent être déléguées à un niveau supérieur et abstrait, ce que fait CArray.
La classe CArray n'est pas une panacée, étant donné que MQL ne supporte pas les patrons de classe. Notre tableau n'est pas nécessairement constitué de types simples, et créer une structure complète du descendant CArray pour chaque nouvelle classe dans un programme n'est pas très intéressant. Il suffit de regarder le nombre de lignes de code que prend chaque fichier descendant de CArray (ArrayInt.mqh, ArrayDouble.mqh, etc.).
Et la façon dont la structure du programme est organisée est secondaire. Le fait est que s'il existe un paramètre qui peut être modifié (dans ce cas, il s'agit de la taille de la réserve), il devrait être possible de l'obtenir.
v4.3, firmware personnalisé.
La fenêtre principale est en position paysage, les autres boîtes de dialogue (commandes) sont en position portrait. Passage incontrôlable et ennuyeux entre la fenêtre principale et les boîtes de dialogue.
allez.... même un logiciel spécialisé comme Smart Rotator.... n'aide pas
c'est drôle, mais si vous définissez le paysage de force dans Smart Rotator pour le terminal, toutes les fenêtres deviennent paysage. mais je veux le portrait ! - J'ai réglé le mode portrait pour le terminal, et quoi ? - hehehe... certaines fenêtres sont toujours en mode paysage et d'autres en mode portrait.