Erreurs, bugs, questions - page 1354
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
Messieurs, que diriez-vous d'améliorer considérablement la convivialité de la langue en ajoutant lapropriété : https://msdn.microsoft.com/en-us/library/x9fsa0sw.aspx.
La danse constante avec les setters, getters et parenthèses est très ennuyeuse.
Alexey, je suis tout à fait pour, mais nous devrions faire un vote, pas ici. Il y a quelques béquilles ici, je ne l'ai pas essayé dans MQL http://rsdn.ru/article/vcpp/props.xml.
Il y a quelque chose qui ne va pas avec l'encodage de votre lien, il affiche toujours du texte en rouge. Mais je sais ce que vous voulez dire, j'ai déjà lu ces béquilles auparavant. Il n'est pas possible de l'implémenter dans MQL pour le moment, parce que la surcharge des opérateurs fantômes n'est pas supportée.Mais cette fonctionnalité native de VS est très utile, surtout lorsqu'elle est intégrée dans une macro. Et elle ne consomme pas de ressources supplémentaires. Il est donc grand temps d'implémenter les propriétés dans MQL aussi, car tout semble maladroit sans elles.
J'ai compris, j'ai trouvé un bug dans le compilateur MQL4. J'étais inattentif et il m'a fallu 2 jours pour le trouver. L'essence du problème est la suivante : je vais vous donner le code le plus simple. Je n'obtiens pas d'erreur de compilation ou de déformation, mais une erreur d'exécution.
Il n'y a pas besoin de faire d'erreur ici. Il y a une nette conversion de type ici. Ce serait comme ça en VS
Quelle différence cela ferait-il ?Il n'y a pas besoin de faire d'erreur ici. Il y a une conversion de type explicite ici.
Vous ne pouvez pas convertir une classe en un type significatif, même explicitement. Il s'agit bien d'une erreur.
Ce n'est pas une classe, c'est un pointeur, et un pointeur est un nombre.
C++ se compile sans erreur
Si vous désactivez la conversion explicite directe en double, la fois suivante, il y aura int au lieu de double avec le même résultat et le compilateur sera à nouveau coupable. Vous devez distinguer vos propres erreurs des erreurs du compilateur.
Ce n'est pas une classe, c'est un pointeur, et un pointeur est un nombre - apprenez les mathématiques.
C++ se compile sans erreur
Si vous désactivez la conversion explicite directe en double, la fois suivante, il y aura int au lieu de double avec le même résultat et le compilateur sera à nouveau coupable. Vous devez distinguer vos propres erreurs des erreurs du compilateur.
Il n'y a pas de pointeur ici, car les pointeurs n'existent pas dans MQL4/5. Il y a des poignées.
----------------------
J'ai reçu une réponse du Service Desk
En effet, il doit y avoir une erreur de compilation ici.
Équipe de soutien 2015.08.24 14:39
Il n'y a pas de pointeur ici, car il n'y a pas de pointeur dans MQL4/5. Il y a des descripteurs.
Un descripteur est toujours un numéro spécifique
Mais cela n'a aucun sens de convertir un descripteur en un nombre ou vice versa, et il s'agit très probablement d'un bug dans le code.
Dans un avenir proche, si une instruction de conversion appropriée est surchargée dans la classe, elle sera appelée.
Dans un avenir proche, si une instruction de conversion appropriée est surchargée dans une classe, elle sera appelée.