Questions des débutants MQL5 MT5 MetaTrader 5 - page 1334
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
C'est Alexey qui a refait quelque chose dans le code que j'ai donné. Ou peut-être l'ai-je sous-estimé - je l'ai écrit "à genoux" comme un simple exemple pour clarifier ce dont je ne me souviens plus.
Peut-être qu'Alexei pourra nous le dire.)
L'itération du cycle ne se terminera pas et n'en commencera pas une nouvelle, mais passera à la suivante. La logique va changer.
Artyom Trishkin:
Это Алексей что-то переделывал в том коде, который я давал. А может и я недоглядел - писал "на коленке" в качестве простого примера для пояснения уже не помню чего.
Artem, pourquoi le mot clé this est-il utilisé ici ? Sans lui, les méthodes fonctionneront avec les membres de la classe...
Alexey, merci pour cette réponse si détaillée.
Le but de la variable ret dans le fragment de code donné n'est pas clair...
Pourquoi est-il calculé si la méthode renvoie un tableau[0] de toute façon ?
P.S.
Et pourquoi utiliser cette méthode dans une classe? Nous travaillons avec les membres de cette classe particulière...
1. A quoi sert la fonction CopyTime ici ?
2. Peut-être qu'Artem répondra à ce sujet - est-ce une préférence personnelle ou est-ce nécessaire ?
1. A quoi sert la fonction CopyTime?
2. Peut-être qu'Artem répondra à cette question - est-ce une préférence personnelle ou est-ce nécessaire ?
Si vous n'aimez pas CopyTime(), remplacez-le par iTime(). Il n'y a pas de différence, l'essentiel est d'obtenir l'heure de la barre actuelle.
Dans ma tête, je me rappelle vaguement quand il a été écrit. Je crois que j'ai aussi posé cette question... Et si je ne me trompe pas, cela permet de s'assurer que la référence ne concerne que les méthodes locales au cas où il y en aurait des similaires dans d'autres classes. Et bien sûr, Artyom va clarifier.
Non. La condition est initialement définie comme suit : si le pointeur est créé avec succès, il est ajouté à la liste. Le support de la courbe est fermé et en cas d'échec, l'addition ne sera pas exécutée. La logique est un peu différente avec l'opérateur continue mais le résultat est le même.
Oui, le résultat est le même, l'intérieur est différent. Je pense que c'est plus rapide avec la suite, bien que ce soit la couleur et la logique .....
Artem, pourquoi le mot clé this est-il utilisé ici ? Parce que même sans lui, les méthodes fonctionneront avec les membres de la classe...
Ils le feront. Je l'utilise parce que je veux qu'ils le fassent :) Il indique explicitement quelles méthodes de classe sont utilisées.
Si vous avez deux classes, l'une en tant que parent et l'autre en tant que descendant, et que vous avez deux méthodes portant le même nom, mais qui ne sont pas virtuelles pour une raison quelconque, vous devez spécifier explicitement laquelle utiliser.
Supposons que la classe parent est CParent et que la classe héritée est CInheritedet qu'elles ont toutes deux la méthode Method().
Dans ce cas, si nous appelons une méthode Method() d'une classe CParent, elle appellera explicitement une méthode de la classe CParent - ce qui n'est pas nécessaire ici. On peut appeler la méthode avec ou sans elle.
Si nousappelons une méthodeMethod() dans une classe héritée CInherited, la méthodede cette classe sera également appelée, puisque nous cherchons d'abord une méthode appartenant à la classe à partir de laquelle nous l'avons appelée.
Si nousappelons CParent::Method() dans une classe CInherited, c'est la méthode de la classe parente qui sera appelée de cette façon, car nous avons explicitement spécifié une méthode qui appartient à la classe parente par l'opérateur de résolution de contexte.
Mais quand même, j'appellerais la méthode Method() dans une classe héritée CInherited avec this - pour être sûr que cette (this == "this") classe héritée serait appelée.
Il y a d'autres explications à cette utilisation. Peut-être que quelqu'un de plus expérimenté en matière de POO pourra nous renseigner.
Oui, le résultat est le même, l'intérieur est différent. Je pense que c'est plus rapide avec la suite, bien que ce soit la couleur et la logique .....
Il ne devrait pas y avoir de différence. C'est simplement plus agréable à regarder - moins de parenthèses et d'indentations.
Eh bien, oui. Je fais partie de ces "certains", en particulier, lorsque j'appelle une fonction standard depuis une classe, je spécifie toujours le contexte global. Tout simplement parce que je peux penser à écrire dans cette classe une méthode portant le même nom que la fonction standard - afin de ne jamais oublier ce qu'elle fait. Et c'est là que : : est utile pour appeler la fonction standard et ceci est utile pour appeler ma méthode du même nom.