Erreurs, bugs, questions - page 715

 
Yedelkin:

Ces constantes ne fonctionneraient-elles pas ?

Une autre valeur a été ajoutée ici :

Identifiant

Description

Type de propriété

MQL5_PROGRAM_TYPE

mql5program_type

ENUM_PROGRAM_TYPE

MQL5_DLLS_ALLOWED

Permission d'utiliser la DLL pour le programme en cours d'exécution.

bool

MQL5_TRADE_ALLOWED

Autorisation d'échange pour ce programme en cours

bool

MQL5_DEBUGGING

Signe d'un programme en cours d'exécution fonctionnant en mode débogage

bool

MQL5_TESTING

Signe de l'exécution d'un programme dans le testeur

bool

MQL5_OPTIMISATION

Signe de l'exécution d'un programme pendant l'optimisation

bool

MQL5_VISUAL_MODE

Signe de l'exécution d'un programme en mode de test visuel

bool

MQL5_LICENSE_TYPE

Un type de licence pour un module EX5. La licence se réfère au module EX5, dont la demande est faite à l'aide de Mql5InfoInteger(MQL5_LICENSE_TYPE).

ENUM_LICENSE_TYPE

 
Rosh:

Une autre valeur a été ajoutée ici :

Oui, j'ai le manuel de janvier.
 
Yedelkin:

Ces constantes fonctionneraient-elles ?

Oui, c'est ça ! Danke schön!
 
mql5:
Oui, vous avez raison, c'est une erreur de compilation, nous allons la corriger.

Wow ! // Je pensais que tu allais faire en sorte que le compilateur jette une erreur.

Merci, si cette syntaxe fonctionne, ce serait parfait.

--

En fait, merci beaucoup à vous tous. La langue s'épanouit. Les bugs et les petits détails, je pense, sont temporaires.

 
void der()
{
  int app;
  for(int i=0;i<100;i++)
  {app++;}
  Print("app=",app);
}
void OnInit()
{
EventKillTimer();
EventSetTimer(1000);
}
void OnTick()
{
}
void OnTimer()
{
der();
}

En sortant

2011.07.28 19:53:20 app=2439.

2011.07.28 20:10:00 app=2139.

2011.07.28 20:26:40 app=2239.

int app ; - ne doit-on pas attribuer automatiquement 0 ?

 
sion:

int app ; - ne devrait-il pas attribuer automatiquement 0 ?

Non. Vous devez l'initialiser vous-même.
 
joo:
Non. Vous devez l'initialiser vous-même.
C'est difficile pour les débutants lorsque des chiffres inconnus commencent à sortir). Mais cela a du sens, si l'application dans les variables globales ne pose pas de problème.
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Основы языка / Переменные / Глобальные переменные - Документация по MQL5
 
sion:
C'est difficile pour les débutants quand des chiffres inconnus commencent à apparaître). Mais il y a un sens à cela, si vous voulez sortir l'application vers des variables globales, il semble qu'il n'y ait aucun problème.

Les variables globales ne doivent pas non plus être initialisées automatiquement. Vous êtes probablement juste "chanceux". Chanceux entre guillemets, parce qu'une telle chance est assortie d'un effondrement ultérieur du toit avec des revendications gauchistes aux développeurs, telles que "hier ça marchait et aujourd'hui ça ne marche plus. Votre plateforme est instable... !".

;-)

Il y a un sens à cela - il faut du temps pour l'initialisation.

Si l'utilisateur se soucie du temps et qu'il n'y a pas besoin d'initialiser pendant la déclaration (la valeur requise sera de toute façon assignée au bon moment), alors le compilateur super attentionné peut perdre du temps sur l'initialisation pour rien. C'est pourquoi c'est une pratique courante dans tous les langages sérieux - l'initialisation est à la discrétion du programmeur. Ce qui est bon et correct. Il faut s'y habituer.

Les zéros garantis ne sont que dans la tête des débutants :) // J'aime les ambiguïtés significatives.

;)

 
Pourquoi Print(1/2) ; écrit-il 0 ? Est-ce qu'il est arrondi à un nombre entier ?
 
fellow:
Pourquoi Print(1/2) ; écrit-il 0 ?

Parce que !

Vous devriez faire ça si vous détestez les chiffres réels :

Print((double)1/(double)2);