Erreurs, bugs, questions - page 117

 
Interesting:
Il est plus pratique d'écrire une fonction qui convertit un nombre en un point.
Tous les int ne sont pas convertis en enum, cela compilera, peut-être sans erreurs, mais au moment de l'exécution, cela se plantera. Tout cela ne sert à rien. L'exemple a été cité comme preuve d'un bug, mais ce bug n'existe pas !
 
Valmars:
Tous les int ne sont pas convertis en enum, cela compilera, peut-être sans erreurs, mais au moment de l'exécution, cela se plantera. Tout cela ne sert à rien. Cet exemple a été cité pour prouver l'existence d'un bogue, mais ce bogue n'existe pas !

Il est clair que tous les int, mais personne n'interdit de gérer correctement cette situation dans une fonction.

Cela dépend de qui va écrire la fonctionnalité et comment. Bien entendu, il est important de savoir comment il sera utilisé par la suite.

Pour travailler avec des périodes, vous aurez besoin, disons, de 4 fonctions : SecondsToPeriod(), PeriodToSeconds(), IntToPeriod() et PeriodToInt().

Je pense que ces 4 fonctions sont suffisantes pour convertir int en period et vice versa...

Il ne doit pas y avoir d'erreurs lors de la conversion d'un point en quelque chose qui a une valeur int, puisque les points sont connus à l'avance, mais s'il y a un problème lors de la conversion d'un int en point, nous retournerons PERIOD_CURRENT.

PS

> Si le paramètre est int, vous devez le convertir dans le bon type.

C'est exactement ce que je voulais dire ici.....

int handle=iCustom(NULL,(ENUM_TIMEFRAMES) ТМ,....);
 

Lorsque vous commencez à écrire un mot réservé et qu'il apparaît dans le menu contextuel, lorsque vous le sélectionnez (appuyez sur inter), il s'ajoute à ce qui a déjà été écrit. Par exemple str - choix, obtenir strstring. Si vous avez écrit strin - choix, alors respectivement strinstring

 
Dmitriy2:

Lorsque vous commencez à écrire un mot réservé et qu'il apparaît dans le menu contextuel, lorsque vous le sélectionnez (appuyez sur inter), il s'ajoute à ce qui a déjà été écrit. Par exemple str - choix, obtenir strstring. Si vous avez écrit strin - choix, alors respectivement strinstring

Mais pourquoi dois-je appuyer sur Enter ? J'ai juste appuyé sur la barre d'espacement et tout est OK.
 
Yedelkin:
Pourquoi dois-je appuyer sur la touche Entrée ? J'appuie sur la barre d'espacement et c'est bon.
Si j'appuie sur la barre d'espacement, seules les lettres que j'ai écrites avec la barre d'espacement restent...
 
Dmitriy2:

Lorsque vous commencez à écrire un mot réservé et qu'il apparaît dans le menu contextuel, lorsque vous le sélectionnez (appuyez sur inter), il s'ajoute à ce qui a déjà été écrit. Par exemple str - choix, obtenir strstring. Si vous avez écrit strin - un choix, alors respectivement strinstring

C'est bizarre. Je vais bien.

avant d'appuyer sur [enter] et après

 

Est-ce que j'ai bien compris que la procédure deinit() ; dans les indicateurs n'est pas encore initiée lorsque le timeframe est modifié et que le graphique est fermé ?

mais l'aide dit que

Событие Deinit также генерируется при завершении работы клиентского терминала, при закрытии графика, непосредственно перед сменой финансового инструмента и/или периода графика,

C'est étrange...
 
Urain:

C'est bizarre et je vais bien.

avant d'appuyer sur la touche [entrée] et après

c'est là que tu commences une ligne...

Essayez de le faire au milieu du code.

 
Dmitriy2:

c'est si vous faites les lignes d'abord...

Essayez de faire ceci au milieu du code (ligne)

Oui, je vois, il y a une telle chose si vous ajoutez au mot fini un nouveau début, puis glisse un tel pépin.

Mais si vous ajoutez à la fin, c'est normal. Probablement un bug, frappez au bureau de service.

 

Bon moment à tous.

Qui sait comment calculer correctement l'heure GMT en fonction de l'heure locale et de l'heure du serveur (doit inclure l'heure d'été/heure d'hiver et le fuseau horaire) ?

J'ai vu un exemple de calcul de l'heure d'été quelque part dans le forum MQL4, mais je ne trouve pas... :(

Raison: