Erreurs, bugs, questions - page 1223

 
murad:

Déjà corrigé, merci.

Une mise à jour sera disponible dans quelques minutes.

Oui, ça marche,

mais pourquoi la photose téléchargeen tant que fichier et ne s'ouvre pas dans le navigateur comme il y a 2 jours ??? Ou c'est quelque chose qui ne va pas chez moi ?

 
ALXIMIKS:

script standard - "perion_converter_new" charge le noyau à 100%.

C'est normal - le décalage est incroyable. 723 construire


Je ne l'ai pas vu créer de tels problèmes.

Maintenant, en 725, c'est la même chose (pas remarqué dans la création de problèmes).

Vous n'avez pas corrigé son code vous-même ?


P./S. : En supposant que ces messages peuvent être supprimés maintenant. Puisque le forum est sur MT5.

 
valeryk:
Je me demande si je suis le seul à n'avoir qu'un seul anglais dans la liste des localisations après la mise à niveau de MT5 vers 991 ?
Il s'agit d'une version bêta. Tout sera en place dans la version.
 

Cette question s'adresse aux experts de la POO.

Il y a une classe. Il a cette méthode de modèle :

//+------------------------------------------------------------------+
//| Template for getting the value                                   |
//+------------------------------------------------------------------+
template<typename T>
T CGlobalVar::Value(void)
  {
   return (T)this.m_value;
  }

Le compilateur ne se plaint pas lors de la compilation du fichier de définition.

Puis j'appelle cette méthode dans le script :

int nRes=gVar1.Value();


J'obtiens une erreur "impossible de déduire l'argument de modèle #0".

 
denkir:

Cette question s'adresse aux experts de la POO.

Il y a une classe. Il a cette méthode de modèle :

Le compilateur ne se plaint pas lors de la compilation du fichier de définition.

Puis j'appelle cette méthode dans le script :


J'obtiens une erreur "impossible de déduire l'argument de modèle #0".

Malheureusement, en MQL, vous ne pouvez coder une fonction que par paramètres, car vous ne pouvez pas spécifier explicitement le type requis, contrairement à C++.
int nRes=gVal1.Value<int>();
Cette limitation peut être contournée en ajoutant un faux paramètre :
//+------------------------------------------------------------------+
//| Template for getting the value                                   |
//+------------------------------------------------------------------+
template<typename T>
T CGlobalVar::Value(T)
  {
   return (T)this.m_value;
  }

int nRes=gVar1.Value((int)0);
 

Erreur de compilation ###

#define  MACRO( name ) \
class name##P {       \
};
MACRO( cls )
void OnStart() {}

mais autrement

#define  MACRO( name ) \
class P##name {       \
};
MACRO( cls )
void OnStart() {}
bien. Quelle est la différence ?
 

Erreur de compilation abstraite : erreur de génération de code

void OnStart()
{
        Print( (string)NULL ); //code generation error
        Print( (long  )NULL ); //а так - нормально
}
 
C'est vrai, tu ne peux pas amener zéro comme ça. Ce n'est pas sûr.
 
L'erreur est que le compilateur ne précise pas où elle se produit(__FILE__, __LINE__) et qu'il n'y a pas de transition comme pour la plupart des erreurs, ce qui la rend difficile à trouver et à corriger.
 

Pourquoi (dans les versions 735 et 993) après la fermeture du terminal, les TOOLTIP (info-bulles des objets) deviennent par défaut et ne restent pas tels qu'ils ont été définis dansObjectSetString()???

Est-ce que ça doit être comme ça ?

C'était comme ça avant ?