Est-il possible d'éviter de nombreux "ou" (||) dans les conditions entraînant la même action ? - page 9
![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
Merci ! Je vais essayer ces crochets maintenant !
Mais vous devez vérifier toutes les options que vous proposez. Sinon, vous risquez de faire une erreur.
Pour éviter que les avertissements ne vous encombrent les yeux, utilisez {} : {}
C'est comme se gratter l'arrière de la tête avec un talon :) Pourquoi quatre opérations supplémentaires et une ligne superflue ? Parce que la version originale ressemblait à ceci :
if (A || B || C || D) Action();
Et il est particulièrement amusant que le topicstarter ait choisi votre variante parmi toutes celles proposées ;))
Et il est particulièrement amusant que le topicstarter ait choisi votre variante parmi toutes celles proposées ;))C'est comme se gratter l'arrière de ma tête avec un talon :) Pourquoi 4 opérations et une ligne supplémentaires ? Après tout, la version originale ressemblait à ceci :
J'ai testé toutes les options proposées, et il s'est avéré que la plus rapide est celle-ci : if (A || B || C || D) Action() ;
Pour réduire le temps, j'ai fait quelques conditions, qui sont très rarement nécessaires, mais dans un autre bloc, et j'en ai même ajouté une autre, mais sans les bool's, qui ajouteraient du temps. Je continue à fouiller tout ce qui est possible, en cherchant des simplifications justifiées, jusqu'à présent sur la démo fonctionne de manière stable et sans erreurs. Le fil de discussion est ouvert, je vais sûrement partager quelque chose d'intéressant ou de peu clair. Merci à tous !
J'ai testé toutes les variantes proposées, et il s'avère que la plus rapide est celle-ci : if (A || B || C || D) Action() ;
Je me demande comment cela pourrait être plus rapide que ceci : si (A) Action() ; sinon si (B) Action() ; sinon si (C) Action() ; sinon si (D) Action() ;
Je me demande comment cela pourrait être plus rapide que ceci : si (A) Action() ; sinon si (B) Action() ; sinon si (C) Action() ; sinon si (D) Action() ;
Désolé, Alexey, je viens de rentrer chez moi ! Cette variante ne convient pas, car, comme je l'ai expliqué plus haut, Acron() ; n'est pas seulement une fonction d'exécution, mais contient plusieurs autres conditions, communes aux précédentes, mais différentes dans leur sens, et, par conséquent, dans un ordre différent d'exécution des fonctions d'action nécessaires. Comme vous le comprenez, je n'ai pas pu alourdir le code avec cette variante. Et en principe, je suis d'accord avec vous que votre version pourrait être plus rapide, si Action() ; n'était qu'un appel d'une fonction, rien de plus. Merci beaucoup de m'aider dans ma recherche de solutions optimales ! Bonne nuit à vous !
Le résultat, comme on peut s'y attendre, est du type "Le shampooing est encore plus antipelliculaire ! !!". :)))
Si vous associez les pellicules dans vos cheveux aux bogues dans le code, alors bien sûr vous devez vous attendre, espérer, réaliser, chercher des solutions intéressantes, mais pas vous ruer !
Et vous appelez ce processus (long de 9 pages) "trouver des solutions intéressantes" ? :)))
Sur la 1ère page - c'était une aide sur "aide", et après la 2ème page il y avait un intérêt - "quel est le chemin le plus rapide". MAIS la réponse à cette question suppose de contenir des chiffres (je n'ai déjà pas mentionné la "pureté de l'expérience" - ce sont des conditions qui assurent l'adéquation des résultats obtenus)... Sinon - à propos du "shampoing" ! :))))
Et vous appelez ce processus (long de 9 pages) "trouver des solutions intéressantes" ? :)))
Sur la 1ère page - c'était une aide sur "aide", et après la 2ème page il y avait un intérêt - "quel est le chemin le plus rapide". MAIS la réponse à cette question suppose de contenir des chiffres (je n'ai déjà pas mentionné la "pureté de l'expérience" - ce sont des conditions qui assurent l'adéquation des résultats obtenus)... :)))