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
Dans le fichier localvar_testscript_4.mq5
Si après l'appel à GetPointer(), nous imprimons le type de pointeur, cela nous indique que les pointeurs sont POINTER_AUTOMATIC et non POINTER_DINAMIC.
Par conséquent, cette ligne n'est jamais exécutée
<quote.
Dans cet ordre de déclaration,items_array est détruit avant que le tableau d'objets array [5] ne le soit. Dans la fonction Destroy(), qui est appelée à partir du destructeur deitems_array, le travail est effectué avec des pointeurs sur des objets encore existants, de sorte qu'aucune erreur ne se produit.
Bonjour à tous !
C'est là que je ne comprends pas du tout la logique. =)
Après tout, dans la méthode Destroy, nous comparons le type de notre pointeur avec un type dynamique. Et notre type est automatique. Par conséquent, l'opérateur delete n'est pas utilisé.
Mais ce n'est pas nécessaire, car les objets créés automatiquement sont supprimés automatiquement.
Enfin, le fichier a oublié de spécifier le type de la valeur de retour void pour les méthodes Destroy et SetArray à l'étape de l'implémentation des méthodes en dehors de la classe, ce qui provoque une erreur.
Les néophytes (comme moi) peuvent être effrayés =)