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
Est-il possible de déclarer un tableau statique dans une section de classe publique et de l'initialiser dans le constructeur ? (comme ci-dessous) (ou seulement élément par élément ?)
vous pouvez
ou peut-être cherchez-vous une initialisation de tableau statique après tout ?
Un tableau statique peut-il être déclaré dans la section publique de la classe et initialisé dans le constructeur ? (comme ci-dessous) (ou seulement élément par élément ?)
Ça donne quelque chose comme ça :
En général, cette pauvreté de la POO est frappante dans le contexte de sa brillance. Pourquoi ne pouvons-nous pas initialiser les variables et les tableaux comme d'habitude lors de leur déclaration ? Je ne doute pas que les théoriciens vont maintenant proposer un grand nombre de théories prouvant que je suis un idiot, mais quand même...Vous pouvez initialiser un tableau local et effectuer ArrayCopy vers le champ de tableau approprié :
C'était aussi une idée, il peut être placé dans la portée globale en dehors de toute classe également.
C'est encore plus facile, mais je voulais que ce soit OOP))
Ça donne quelque chose comme ça :
En général, cette pauvreté de la POO est frappante dans le contexte de sa brillance. Pourquoi ne pouvons-nous pas initialiser les variables et les tableaux comme d'habitude lors de leur déclaration? Je ne doute pas que les théoriciens trouveront de nombreuses théories pour prouver que je suis un idiot, mais quand même...J'ai exactement la même pensée)) chaque fois que j'écris avec la POO.
C'était aussi une idée, il peut être placé dans la portée globale en dehors de toute classe.
C'est encore plus facile, mais je voulais que ce soit OOP))
vous pouvez
ou peut-être cherchez-vous une initialisation de tableau statique après tout ?
option intéressante.
appelle-t-il une "méthode avec constructeur" ?
option intéressante.
est-ce un appel à une "méthode avec constructeur" ?
pas de
c'est ainsi que l'on initialise les statiques.
vous n'avez pas besoin de l'initialiser, c'est à ça que ressemblera le code :
ce n'est pas un appel de méthode mais le nom complet du champ de la classe A::Mass[5] ;
mais si vous supprimez la ligne, il y a une erreur de compilation - les statiques doivent allouer de la mémoire avant la création de l'instance de la classe - c'est ce que fait la ligne jaunepas de
voici comment s'écrit l'initialisation de la statique
vous n'avez pas besoin de l'initialiser, c'est à ça que ressemblera le code :
merci, il s'avère que cette ligne(static bool A::Mass[5] ;) ne peut être transférée au constructeur d'aucune manière ?
ou est-ce la seule façon d'initialiser les statiques dans un cas comme celui-ci ?
poste ci-dessus complété
oui, la statique doit être décrite séparément,@fxsaber m'a aidé à la comprendrehttps://www.mql5.com/ru/forum/325418/page4#comment_16116740
vous pouvez initialiser les classes statiques dans MQL5 également.
c'est-à-dire que cette ligne(static bool A::Mass[5] ;) ne peut pas être transférée au constructeur ?
Non, c'est un champ de classe statique. Vous devez allouer la mémoire à l'avance, et non au moment de la création de l'instance de la classe.
et vous l'utiliserez ensuite comme un tableau habituel
Si la question porte sur l'initialisation sous la forme d'une seule chaîne, alors la version de Sergei est ce que vous recherchez, et vous n'avez pas besoin de statique.
poste ci-dessus complété
oui, la statique doit être décrite séparément,@fxsaber m'a aidé à la comprendrehttps://www.mql5.com/ru/forum/325418/page4#comment_16116740
vous pouvez également initialiser des classes statiques dans MQL.
Merci, maintenant je l'ai essayé et j'ai réalisé qu'il est possible d'accéder à un tableau de cette façon.
Pour être honnête, nous avons OOP, mais je ne l'ai pas vu dans Help. C'est dommage qu'il ne décrive pas de telles nuances.
Merci beaucoup à tous ceux qui ont répondu !