Erreurs, bugs, questions - page 2720

 

Bonjour à tous !

Pouvez-vous me dire comment insérer une image dans la description du script dans la conception et la publication ultérieure dans CodeBase ?

J'ai seulement, pour une raison quelconque, inséré une vidéo de Youtube..., mais aucune icône pour insérer une image! :(

Merci d'avance ! :)

 
gsl17:

Bonjour à tous !

Pouvez-vous me dire comment insérer une image dans la description du script dans la conception et la publication ultérieure dans CodeBase ?

J'ai seulement, pour une raison quelconque, inséré une vidéo de Youtube..., mais aucune icône pour insérer une image! :(

Merci d'avance ! :)

Le bouton d'insertion d'imageIllustration du bouton est disponible pour l'utilisateur à partir d'un certain classement minimum. Vous n'avez manifestement pas assez d'expérience pour travailler avec le boutonIllustration du bouton.

 
Vladimir Karputov:

Le bouton d'insertion d'image est disponible pour l'utilisateur à partir d'un certain classement minimum. Vous ne disposez manifestement pas d'une cote suffisante pour utiliser le bouton.

Merci pour cette précision.

C'est dommage...

P.S. Oui, en effet, c'est la première fois que je mets un script sur CodeBase.

 
Bild 2390 mt 5 profiler sur l'histoire travaille sur des données réelles no.
 

Défauts dans le fonctionnement de la fonction template/class cache :
(corrigé par MT5(build 2390)) ***(up) Comportement indéfini, vous créez un objet complexe enveloppé avec le type interne "C" plusieurs fois et il s'avère être un type de données complètement différent, peut-être "B", peut-être "int", ce que vous voulez...
(corrigé par MT5(build 2390)) * Erreur de compilation, bug sur le passage d'un pointeur de fonction comme argument de modèle const ref.
(corrigé par MT5(build 2390)) * Erreur de compilation, l'objet B<int> peut être créé après l'objet de la classe B<void*>, mais une erreur de compilation se produit si cela est fait avant.


Défauts dans la fonction de modèle/travail de classe :
(corrigé par MT5(build 2390)) **(up) Erreur de compilation, bogue lors de la tentative d'accès à une classe interne pour un paramètre de modèle de fonction de modèle.
(corrigé par MT5(build 2390)) **(up) Erreur de compilation, bug dans la fonction template, le pointeur passé dans uneconversion de type explicite se comporte comme une classe sinon comme un pointeur.
(non corrigé par MT5(build 2390)) *** Erreur de compilation, la principale revendication de l'avertissement de sortie inappropriée est "comportement déprécié, l'appel de méthode caché sera désactivé dans une future version du compilateur MQL". L'implémentation actuelle consiste à tirer un canon sur un moineau.
(non corrigé par MT5(build 2390)) ** Compile Error, le bogue concerne la valeur de retour d'une fonction template lorsque la valeur de retour est une classe interne à l'intérieur d'une classe template dont le type de paramètre est défini par le type d'argument de la fonction template.
(non corrigé par MT5(build 2390)) ** Erreur de compilation, bug d'espace de nom et de portée dans le constructeur de modèle lors de l'appel de la classe de base lorsque le même nom de classe est utilisé dans l'héritage et la classe interne.
(non corrigé par MT5(build 2390)) * Erreur de compilation, bogue sur l'appel d'une fonction modèle avec des types d'arguments explicites lorsqu'elle est appelée depuis une fonction non modèle surchargée.
(non corrigé par MT5(build 2390)) Erreur de compilation, bogue sur la définition de la classe interne - pas de référence à l'espace de noms global lors de la définition d'une classe de base.
(corrigé par MT5(build 2390)) ** Erreur de compilation, bogue avec la génération du code de la classe modèle lors de l'utilisation de la classe interne.
(corrigé par MT5(build 2390)) ** Erreur de compilation, bogue sur la génération de méthodes/classes de modèles, le processus de substitution automatique des paramètres de modèles sort du cadre du code du programme principal.
(corrigé par MT5(build 2390)) * Erreur de compilation, bogue avec l'absence de génération de code de classe de modèle lorsque la classe de modèle agit comme valeur de retour pour la méthode de modèle.
(corrigé par MT5(build 2390)) * Erreur de compilation, bug, lorsque la structure interne est passée à la fonction template, letype de données reçu ne peut pas être utilisé comme type de données de base pour une autre structure interne dans la classe template.
(corrigé par MT5(build 2390)) * Erreur de compilation, la vérification des noms de type de modèle réutilisés n'est pas effectuée lors de la déclaration d'une fonction de modèle à l'intérieur d'une classe de modèle, ce qui entraîne un comportement inattendu.
(corrigé par MT5(build 2390)) Erreur de compilation, défauts multiples liés au retour de l'objet "in place created" lorsque la classe/structure du modèle est l'objet.
(corrigé par MT5(build 2368)) *( Ce n'est pas un bug, c'est une fonctionnalité) dans le constructeur de la classe de base, il est impossible d'effectuer un typecast explicite lors du casting du pointeur vers l'objet de la classe de base vers le pointeur vers la classe parent.
(non corrigé par MT5(build 2390)) (nouveau) Erreur de compilation lors de l'utilisation du modificateur d'accès par défaut pour l'héritage dans une classe de modèle lorsque le paramètre de modèle agit comme classe de base.
(non corrigé par MT5(build 2390)) * (nouveau) Erreur de compilation, lors de l'appel d'une instruction d'affectation via une référence explicite à la classe de base. Le problème se pose pour une classe modèle où le paramètre modèle agit comme une classe de base.


Défauts liés au décalage de la priorité d'appel pour les fonctions surchargées dans MQL par rapport à C++ :
(corrigé par MT5(build 2390)) **(up) Erreur de compilation lorsque la première des fonctions de modèle surchargées utilise une classe de base de modèle entièrement spécialisée et que la seconde utilise une classe de base de modèle non spécialisée.
(non corrigé par MT5(build 2390)) ** Erreur de compilation, une erreur de compilation se produit lors de la génération du code d'une fonction modèle, malgré le fait qu'il existe une fonction modèle surchargée avec une signature appropriée pour les paramètres passés.
(non corrigé par MT5(build 2390)) * Erreur de compilation, "appel ambigu à une fonction surchargée" lorsque des fonctions de modèle surchargées avec un nombre différent de paramètres de modèle sont appelées.
(corrigé par MT5(build 2390)) (corrigé par MT5(build 2390)) **(up) Erreur de compilation, la priorité d'appel des fonctions template surchargées dépend en fait d'un type de paramètre template qui ne devrait théoriquement pas affecter le résultat de la compilation.
(corrigé par MT5(build 2390)) *** Erreur de compilation lorsque l'on hérite des classes A <= B <= C <= D et que l'on implémente deux fonctions de surcharge, par exemple une à partir du paramètre A* et une à partir du paramètre B*, puis que le passage d'un objet C* ou D* dans une telle fonction dans MQL provoque une erreur de compilation.
(corrigé par MT5(build 2390)) (Corrigé par MT5(build 2390). ** Runtime, incohérence dans les priorités pour les appels de fonctions template surchargées.
(Corrigé par MT5(build 2390)) *** Runtime, lors de la sélection d'une fonction surchargée appropriée pour un argument de type pointeur, la fonction avec conversion de type en pointeur vers le parent au lieu de la classe de base devient une priorité plus élevée.
(non corrigé par MT5(build 2390)) *** (nouveau) Erreur de compilation, priorités d'appel des fonctions de modèle surchargées.
(non corrigé par MT5(build 2390)) ** (nouveau) Erreur de compilation, la conversation implicite de type est utiliséelors de l'appel d'une fonction pour un argument avec le type de données couleur malgré l'existence d'une fonction modèle surchargée de signature correspondante avec le type de données couleur.
(non corrigé par MT5(build 2390)) * (nouveau) Erreur de compilation, malgré une spécialisation explicite lorsque la fonction template surchargée est appelée, la fonction template est appelée par défaut de toute façon, ce qui conduit à un dépassement de pile...
(non corrigé par MT5(build 2390)) * (nouveau)Erreur de compilation,erreur de compilation lorsqu'une fonction est appelée par son pointeur, lorsqu'un tableau de pointeurs vers une fonction est utilisé.


Défauts liés à MetaEditor :
(non corrigé par ME5(build 2390)) *** (nouveau) Débogueur, le blocage d'un point d'arrêt dans uneméthode de structurestatique entraîne le blocage du terminal MT.
(non corrigé dans ME5(build 2390)) ** (nouveau) Compilation, la description de l'erreur de compilation ne peut pas tenir dans la limite de 256 caractères et est coupée, il est donc impossible de comprendre quelle erreur de type de données se produit parce que la partie nécessaire a été coupée.
(non corrigé dans ME5(build 2390)) ** (nouveau) Debugger, StepInto (F11) et set breakpoints ne fonctionnent pas.
(non corrigé dans ME5(build 2390)) ** (nouveau) Debuger, après le déclenchement d'un point d'arrêt, au lieu de poursuivre l'exécution du code en appuyant sur (F5), le même point d'arrêt est en fait déclenché à nouveau sans exécuter de code.
(non corrigé dans ME5(build 2390)) *(nouveau) Compilation, signature incorrecte du paramètre du modèle de fonction dans la description de l'erreur et l'information sur le paramètre.
(non corrigé dans ME5(build 2390)) * (nouveau) MetaEditor, la fonctionnalité de remplacement (Strl+H) ne fonctionne pas pour l'inclusion de "Dans la sélection" avec "Direction vers l'arrière", lorsque la partie nécessaire de l'application est sélectionnée, et non le code entier.


Défauts liés à la lenteur de l'exécution des fonctions, au fonctionnement de l'optimiseur de code :
(corrigé par MT5(build 2390)) **(up) Temps d'exécution, surcharge importante lors de l'ajout d'un élément à la fois dans un tableau en utilisant ArrayResize, malgré la mémoire qui leur est réservée, par exemple pour les structures, jusqu'à 7 fois plus lent.


Suggestions :
(nouveau) - ajouter à ME la recherche/remplacement par le projet en cours, car pendant le remaniement, il n'est pas bon de parcourir chacun des fichiers et de rechercher les occurrences.
Référence(nouveau) - dans ME lors de la compilation pour remplir les colonnes vides Fichier, Ligne, Colonne avec les informations appropriées sur le fichier source, à partir duquel a été fait l'inclusion.
link- sur l'introduction du support d'intellisense pour la fonctionnalité d'espace de nom basé sur le travail d'intellisense pour les méthodes statiques dans les classes.
link- pour fournir la possibilité de passer des littéraux et des variables temporaires comme arguments de fonction const ref.
lien- lors dudéplacement de fichiers de projet dans l'onglet Projet, pour les fichiers déplacés qui sont ouverts et dans les onglets ME, pour mettre automatiquement à jour leur chemin d'accès.
link- pour introduire la fonctionnalité de déclaration de typedef dans MQL.
lien- à propos de la possibilité de forcer la génération de constructeurs de copie et d'opérateurs d'affectation par défaut.

 
C'est dommage que ME ne montre pas les chemins des mqh pluggables lors de la compilation, seulement les noms.
 
Lors de l'affichage de l'historique des transactions en mode "Ordres et transactions", il est impossible de trier par colonnes. De ce fait, certaines transactions qui viennent d'avoir lieu ne vont pas à la fin de la liste, mais au milieu.
 
fxsaber:

Un exemple simple. Vous voulez avoir un tableau de MAUs avec des périodes spécifiées.

Chaque MAP est un objet du même type. Il est clair que le MASQUE est spécifié sans ambiguïté par la période. Il est donc logique de le rendre constant.


D'autres langages créent simplement un tableau de pointeurs. Dans MQL, nous n'avons pas cette liberté.

Ce serait illogique. Si vous ne voulez pas le changer, cela ne veut pas dire que vous devez le rendre constant. Il suffit de rendre la variable privée.

Ce serait logique si vous en retiriez quelque chose, mais vous n'avez fait que vous créer un problème.
Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2020.04.21
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 
Sergey Dzyublik:

Savez-vous comment sont conçus l'optimiseur et le compilateur MQL ?
Comment pouvez-vous être sûr que les champs const de types simples ne sont pas utilisés à cette fin ?

L'optimiseur n'a rien à voir avec cela.

 
Koldun Zloy:

Ça n'a pas de sens. Si tu ne veux pas le changer, ça ne veut pas dire que tu dois faire des constantes. Il suffit de rendre la variable privée.

Il serait logique que vous en retiriez quelque chose, mais vous n'avez fait que vous créer un problème.

const est un contrôle supplémentaire. Sinon, il ne serait pas nécessaire d'introduire cette directive dans le langage.


L'avantage d'un champ public const est qu'il est accessible en lecture (il peut être transmis par référence). Mais il est exclu de le modifier par erreur.


const m'aide beaucoup lors de l'écriture de programmes. C'est la première fois qu'un problème se pose.


Il est également utile d'utiliser this et : : là où ils ne peuvent pas être écrits.

Raison: