Erreurs, bugs, questions - page 1707
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
Et je ne comprends toujours pas le dernier exemple. La surcharge de l'opérateur "=" dans la classe A fait passer this[0] de rvalue à lvalue... Je n'arrive pas à comprendre comment. S'agit-il d'une fonctionnalité de la MCL ? Il n'y a pas de tel comportement chez les pros.fxsaber, comment êtes-vous arrivé à cette construction ? Je veux dire surcharge = en A. Ou par essais et erreurs ?
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Bibliothèques : TypeToBytes
fxsaber, 2016.09.21 21:25
Publié. Maintenant, pour toute variable (structure ou type standard), non seulement la lecture fonctionne comme avec un tableau, mais aussi l'écriture :
_W(AnyVariable)[Pos] = AnyValue; // Записывает по байтовому смещению Pos значение AnyValue в переменную AnyVariable
Ce n'était pas facile à deviner avant l'implémentation - cela s'est probablement avéré être un bon test de la compétence moyenne en matière de POO : je ne connais que les classiques pour les classes.
Si quelqu'un connaît quelque chose de similaire, veuillez partager le lien pour l'éducation.
Je l'ai fait en toute connaissance de cause. Sinon, je n'aurais pas écrit une telle chose.
Donc vous comprenez tout, mais vous ne pouvez rien dire ? )) Je vois.
Où ? Ici ?
this[0] = new A ;
Ici, l'opérateur[] renvoie la valeur contenue dans la cellule Data[0]. Il ne s'agit pas d'une référence à cette cellule ou d'un pointeur vers celle-ci, mais simplement d'une copie de la valeur contenue dans cette cellule, c'est-à-dire rvalue. Rien ne peut être attribué à cette copie, bien sûr. Je ne comprends pas en quoi l'opérateur= dans la classe A change cela.
Peut-être s'agit-il de ces mêmes problèmes de références dans le MCL.
Il se peut que ce ne soit pas la valeur retournée ici, mais plutôt une référence à celle-ci, c'est-à-dire lvalue... Mais pourquoi ne peut-on pas lui attribuer une nouvelle valeur immédiatement, pourquoi avons-nous besoin de l'opérateur= dans la classe A ? Je ne comprends pas...
Probablement, il s'agit des mêmes références dans MKL.
Comme s'il ne s'avérait pas que ce n'est pas une valeur qui est retournée ici, mais une référence à celle-ci, c'est-à-dire lvalue... Mais pourquoi ne peut-on pas lui attribuer une nouvelle valeur immédiatement, pourquoi avons-nous besoin de l'opérateur= dans la classe A ? Je ne comprends pas...
Lorsque vous assignez quelque chose à un pointeur de valeur, le pointeur est automatiquement converti en une référence d'objet. Tout le monde est né hier !
Cela fait longtemps que je demande cela au Bureau, mais ils disent que ce n'est pas sûr, bien qu'en fait ce ne soit pas plus dangereux que de passer des arguments par référence.
Lorsque vous assignez quelque chose à un pointeur de valeur r, le pointeur est automatiquement converti en référence d'objet. C'est comme hier, n'est-ce pas ?
Mauvaise concordance de type
MqlTick time_msc - long.
Copier les tics de - ulong.