Erreurs, bugs, questions - page 1856

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
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Caractéristiques du langage mql5, subtilités et astuces
fxsaber, 2017.04.14 11:40
Ouaip, des courtiers véreux. Ils y mettaient aussi des nombres négatifs.
Il serait bon que les développeurs fixent une limite à l'éventail des valeurs possibles de chaque paramètre lorsque les courtiers configurent les symboles.
J'ai remarqué que lorsque je mets à jour des produits du marché, tous les paramètres de ce produit sur les graphiques sont réinitialisés aux valeurs par défaut.
Ce n'est pas bien, comment éviter cela ?
ArrayMaximum() et ArrayMinimum() - l'ordre dans lequel les paramètres sont passés ne correspond pas à l'aide :
Un peu de savoir-faire. Contournement de l'opérateur d'affectation
Résultat
Ce n'est pas une astuce, c'est une perversion.
Je ne m'attendais pas à ça de ta part.
Ce n'est pas un truc intelligent, c'est une perversion.
Je ne m'y attendais pas de ta part.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Bibliothèques : TypeToBytes
fxsaber, 2017.04.13 13:34
Un exemple de l'utilité de cette fonction pour identifier les erreurs potentielles.
Écrire et exécuter le script.
Résultat.
_WRONG_ASSIGN_OPERATOR(STRUCT) = true
Cela indique que l'opérateur d'affectation ne copiera pas la structure dans une structure du même type.
Si nous ajoutons plus à la structure,
le résultat sera le même.
Il peut sembler qu'en changeant cet opérateur en
mais la bibliothèque dit le contraire.
C'est peut-être le point le plus subtil de cet exemple.
Corrigez-le en
et vous obtenez le résultat
_WRONG_ASSIGN_OPERATOR(STRUCT) = false
Maintenant l'opérateur de copie est correct !
Nous pouvons vérifier de la même manière l'exactitude des opérateurs de cession/copie de toute structure simple.
1. Quand on écrit comme ça :
Ce n'est pas operator= qui doit être appelé mais le constructeur de copie.Mais c'est plutôt une question pour les méta-citations.
2. Si le constructeur de copie créé par le compilateur n'est pas appelé, nous pouvons l'écrire nous-mêmes.
Maintenant, operator= n'est pas appelé.
3. Puisque les membres de la structure sont à notre disposition, nous pouvons simplement l'écrire de cette façon :
Mais si vous les rendez privés, alors votre tiphook ne vous aidera pas non plus.
4. et le plus important : operator= est utilisé pour s'assurer que toutes les affectations passent par lui et ne le contournent pas.
En général, le constructeur de copie est défini en même temps que lui.
Oui. J'ai regardé l'échantillon. Je n'ai pas vu beaucoup de bénéfices.
1. Quand on écrit comme ça :
Ce n'est pas operator= qui doit être appelé mais le constructeur de copie.Mais c'est plutôt une question pour les méta-citations.
2. Si le constructeur de copie créé par le compilateur n'est pas appelé, nous pouvons l'écrire nous-mêmes.
Maintenant, operator= n'est pas appelé.
3. Puisque les membres de la structure sont à notre disposition, nous pouvons simplement l'écrire de cette façon :
Mais si vous les rendez privés, alors votre tiphook ne vous aidera pas non plus.
4. et le plus important : operator= est utilisé pour s'assurer que toutes les affectations passent par lui et ne le contournent pas.
En général, le constructeur de copie est défini en même temps que lui.
Oui. J'ai regardé l'échantillon. Je n'ai pas vu beaucoup de bénéfices.
_R est une chose universelle. C'est pourquoi nous n'avons pas besoin de redéfinir les structures extraterrestres avec leurs propres opérateurs.
Oui, avec Akepad je vois que l'encodage est Win-1251 (ANSI), mais les anciens fichiers ont UTF-16LE 1200.
L'encodage par défaut pour les nouveaux fichiers a-t-il finalement changé ?
Non, c'était toujours Win-1251 (ANSI) et à un moment donné, UTF a été ajouté. Mais seulement pour les sources qui contiennent des caractères non-Ansi.
Et comment surcharger les opérateurs [] et =, de sorte que vous pouvez écrire comme ceci :