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
Comme c'est bon de pouvoir lire... :)
Ce n'est pas non plus une mauvaise approche, bien que, si j'ai bien compris, ces deux approches soient calculées sur le transfert/la lecture d'un seul paramètre (bien que de types différents).
Mais comment résoudre le problème, lorsque vous avez beaucoup de paramètres et que vous ne pouvez pas tous les mettre dans une classe de base ?
Si je comprends bien, vous devez entrer un index du paramètre que vous passez (vous pouvez aussi créer un tableau dans une classe avec les paramètres stockés par index) ?
Je ne le comprends pas non plus...
Dans mon exemple, il y a un index, mais il n'est pas numérique sous une forme explicite, mais un enum.....
Oublie ça, ça n'en vaut pas la peine.
Interesting:
En général, après une discussion sur le problème,https://www.mql5.com/ru/forum/3566/page6#comment_58280 a envoyé une demande au SR.
1. Je ne sais pas, je ne sais pas.
Je ne pense pas que les développeurs prendront certaines mesures, sacrifiant la fonctionnalité au nom de la sécurité (à juste titre d'ailleurs).
Faire un rapport.
L'application était la suivante :Suggestion :
1. Clarifier la section "Polymorphisme" du manuel "Polymorphisme" en termes de spécification de la façon de remplir correctement les formes de tableau [10] avec des instances de classes dérivées de CShape (donner un exemple).
2. Vérifiez si la chaîne de caractères est écrite correctement :
3. Expliquez s'il faut ou non mettre des accolades immédiatement après le nom de la classe déclarée lors de la déclaration des classes :
classe CShape{} ;
classe CCircle{} :public CShape
classe CSquare{} :public CShape
Réponse :
Une description détaillée sera ajoutée à l'aide, dont voici un extrait :
Nous supposons que notre programme utilise des objets de types différents (CCircle et CSquare) mais hérités d'un type de base CShape. Le polymorphisme nous permet de créer un tableau d'objets de type de base CShape, mais lorsque nous déclarons ce tableau, les objets eux-mêmes sont encore inconnus et leur type est indéfini.
La décision du type d'objet qui sera contenu dans chaque élément du tableau sera prise pendant l'exécution du programme. Cela implique la création dynamique d'objets pour les classes correspondantes et, par conséquent, la nécessité d'utiliser des pointeurs d'objets au lieu des objets eux-mêmes.
Pour créer des objets de façon dynamique, on utilise l'opérateur new ; chacun de ces objets doit être indépendamment et explicitement supprimé par l'opérateur delete. Par conséquent, nous allons déclarer un tableau de pointeurs de type CShape et créer un objet du type requis pour chacun de ses éléments(nom_de_la_classe_nouvelle), comme il est indiqué dans le script d'exemple :
Notez que lorsque vous supprimez un objet avec l'opérateur delete, vous devez vérifier le type de son pointeur. Vous pouvez supprimer uniquement les objets avec le pointeur POINTER_DYNAMIC, vous obtiendrez une erreur pour les pointeurs d'un autre type.
Merci pour le post, nous avons corrigé №2 et №3. Sera dans les nouvelles versions de l'aide
Question. La bibliothèque standard utilise les lignes suivantes
Le Manuel de référence dit : " le spécificateur const n'est pas applicable aux membres des structures et des classes". Que signifie l'utilisation de const dans une méthode de classe ci-dessus, et quelles sont les règles pour l'utiliser dans de tels cas ?
Yedelkin:
...............
Que signifie l'utilisation ci-dessus de const dans une méthode de classe, et quelles sont les règles pour l'utiliser dans de tels cas ?
Question. La bibliothèque standard utilise les lignes suivantes
Le Manuel de référence dit : " le spécificateur const n'est pas applicable aux membres des structures et des classes". Que signifie l'utilisation de const dans une méthode de classe ci-dessus, et quelles sont les règles pour l'utiliser dans de tels cas ?
Un membre de structure/classe est une chose, mais une méthode en est une autre.
Une méthode décrite comme const signifie qu'elle ne change pas l'état/les membres de sa classe. C'est-à-dire qu'après avoir appelé une telle méthode, l'état interne de la classe reste inchangé. Il est utilisé pour indiquer en plus au compilateur de vérifier les tentatives de modification des membres de la classe.
Un membre de structure/classe est une chose et une méthode en est une autre.
Une méthode décrite comme const signifie qu'elle ne change pas l'état/les membres de sa classe. C'est-à-dire que l'état interne de la classe reste inchangé après l'appel de cette méthode. Il est utilisé pour indiquer en plus au compilateur de vérifier les tentatives de modification des membres de la classe.
Wow. Merci ! Et je me suis creusé les méninges.
Au fait, une question logique tant que nous sommes sur le sujet : il n'y a pas de manuel et ce n'est pas prévu ?
Comment pourrait-on l'utiliser ? Parce que les fils n'interagissent pas entre eux,
Si les données pouvaient être transférées librement d'un thread à l'autre, alors, oui, une telle instruction serait nécessaire.
Bon après-midi.
Une telle question.
Sur le code ci-dessus
Qu'est-ce que j'ai fait de mal ou est-ce généralement irréalisable dans MT5 ?
Je veux (comme je pense que c'est évident) - obtenir des noms surchargés dans les variables de nom de fichier...