Erreurs, bugs, questions - page 1696
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
Voici un exemple
Cet exemple est à peu près le même que le premier ;-). Ma lettre a été ouverte, mais vous ne l'avez pas lue ? Que voulez-vous obtenir en redéclarant les méthodes dans le descendant, mais sans les définir ? Pour appeler une implémentation de base sans en avoir une nouvelle, il n'est pas nécessaire de les déclarer dans le descendant.
Je veux voir seulement 10 méthodes héritées plus les méthodes créées dans la classe descendante. Je n'ai pas besoin de 190 méthodes, qui ne seront pas liées à la classe actuelle en aucune façon.
Par exemple, j'ai une classe de base où toutes les propriétés maximales des formes, largeur, hauteur, coins, rayons, couleurs, surface sont décrites.
Sur la base de ces méthodes de propriété, je crée une classe dérivée de cercle qui utilise les méthodes de la classe parente, rayon, couleur, surface... Mais je n'ai pas besoin de coins et de largeur ici ...
Sur la base de ces méthodes, je crée une classe de triangle descendante qui utilise les méthodes de la classe parente, couleur, surface, coins... Mais je n'ai pas besoin de rayon ici...
Quand je demande pourquoi, la classe parent a un groupe de méthodes qui sont communes à toutes ou communes à un groupe de formes, comme la méthode couleur, style.
Je veux voir seulement 10 méthodes héritées plus les méthodes créées dans la classe descendante. Je n'ai pas besoin de 190 méthodes, qui ne seront pas liées à la classe actuelle en aucune façon.
Par exemple, j'ai une classe de base où toutes les propriétés maximales des formes, largeur, hauteur, coins, rayons, couleurs, surface sont décrites.
Sur la base de ces méthodes de propriété, je crée une classe dérivée de cercle qui utilise les méthodes de la classe parente, rayon, couleur, surface... Mais je n'ai pas besoin de coins et de largeur ici ...
Sur la base de ces méthodes, je crée une classe de triangle descendante qui utilise les méthodes de la classe parente, couleur, surface, coins... Mais je n'ai pas besoin de rayon ici...
Lorsque j'ai demandé pourquoi, la classe parentale a un groupe de méthodes qui est commun à tous ou commun à un groupe de formes, par exemple la méthode couleur, style.
Je ne comprends pas : cette question - une question ou une réponse souscrite ? En général, ils le font - dans la classe de base, c'est commun, puis dans les descendants, ils ajoutent des particularités. Pourquoi le faire dans l'autre sens ? Quel est le but ?
Mais même si vous n'allez pas plus loin, j'ai déjà suggéré une option - insérer un descendant intermédiaire dans lequel toutes les propriétés et méthodes inutiles sont déplacées vers la partie privée.
Il y a 200 méthodes dans la classe parent, je veux voir seulement 10 méthodes héritées plus celles créées dans la classe enfant, je n'ai pas besoin de 190 méthodes supplémentaires qui ne sont pas liées à la classe actuelle.
Pour ce faire, vous devez déclarer l'héritage comme protégé ou privé, puis surcharger les méthodes dont vous avez besoin.
Pour ce faire, vous devez déclarer l'héritage comme protégé ou privé, puis surcharger les méthodes que vous voulez.
Je ne comprends pas : cette question est-elle une question ou une réponse incomplète ? En général, ils procèdent de la manière suivante : dans une classe de base, on trouve le général, puis dans les descendants, on ajoute les particuliers. Pourquoi faire le contraire ? Quel est le but ?
Mais même si vous n'allez pas trop loin, j'ai déjà suggéré une option - insérer un descendant intermédiaire dans lequel toutes les propriétés et méthodes inutiles sont déplacées vers la partie privée.
Merci.
Alexey, ton exemple ne fonctionne pas, dans tous les cas, l'enfant reçoit les méthodes du parent, qui ne devraient pas être vidées.
Que se passe-t-il si vous modifiez le nom court lors de sa création ?
Et changer à chaque fois ?
Si l'indicateur contient des tampons indicateurs, l'auto-identification est facile, mais sans tampons, je ne vois pas encore de solution.
Comment connaître monINDICATOR_SHORTNAME ? Les fonctions IndicatorGet* n'existent pas !
Print(MQLInfoString(MQL_PROGRAM_NAME)) ; renvoie le nom court de l'indicateur. Si aucun nom court n'est spécifié, le nom complet sera renvoyé.