MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 50

 
alexvd:

L'avez-vous essayé dans la version 541 ?

J'ai essayé de reproduire en me basant sur vos sources, sans succès jusqu'à présent. Pouvez-vous poster toutes les sources et les détails (OS, symbole, broker, dossier d'installation, permissions, etc.) sur le servicedesk


En outre, veuillez m'indiquer les paramètres graphiques utilisés dans le terminal (nombre de barres dans l'historique et dans le graphique).
 
alexvd:

Il est préférable d'aller directement au Service Desk avec toutes les sources et la description.

J'ai réduit et réduit le code en sauvegardant le problème et je suis arrivé à une drôle de chose :

#property indicator_chart_window
#property indicator_buffers 1    
//+------------------------------------------------------------------+
int start(){
    int x,i; 
    i = Bars - IndicatorCounted()-1; 
    
    BetterHighLow    a;
    for(x=i; x>=0; x--){  
        a.PereborFunc();
    }   
    return(0);
}
//+------------------------------------------------------------------+
class BetterHighLow{
public:
   BetterHighLow(){};
   void PereborFunc(){};
  };
//+------------------------------------------------------------------+

J'appelle 1 indicateur - tout est OK, un autre avec le même code mais un nom différent - également tout est OK.

Si j'appelle deux indicateurs avec le même nom et le même code - le terminal se plante.

 
ALXIMIKS:

J'ai réduit et réduit le code en sauvegardant le problème et je suis arrivé à une drôle de chose :

J'appelle 1 indicateur - tout est OK, un autre avec le même code mais un nom différent - tout est également OK.

Mais si j'appelle deux indicateurs avec le même nom et le même code - le terminal se plante.


Ensuite, passez au servicedesk : il n'y a pas de méthodes virtuelles dans votre code, cela signifie qu'elles sont appelées par un constructeur dans le code du terminal lui-même.


//And in general I wonder, who persecutes to transfer their programs to new builds ? Si ça marche, n'y touchez pas, d'accord ?

 
alsu:

Ensuite, passez au servicedesk : il n'y a pas de méthodes virtuelles dans votre code, cela signifie qu'elles sont appelées par un constructeur dans le code du terminal lui-même.

//Atout compte fait, je me demande qui persécute pour traduire ses programmes aux nouvelles constructions ? Si ça marche, n'y touchez pas, d'accord ?


L'hiver (les réalités du tm5 dans le mt4) se prépare mieux en automne.

+ traduire vos propres codes en POO comme moyen d'apprentissage, en termes de fixation du matériel, n'est pas si mal.

 
alsu:

Ensuite, passez au servicedesk : il n'y a pas de méthodes virtuelles dans votre code, cela signifie qu'elles sont appelées par un constructeur dans le code du terminal lui-même.


//And in general I wonder, who persecutes to transfer their programs to new builds ? Si ça marche, n'y touchez pas, d'accord ?


J'ai déjà reproduit le problème. Le billet n'est pas nécessaire.
 
HIDDEN:

L'optimisation dans le testeur de stratégie ne fonctionne pas ?

Je teste les Expert Advisors standards pour l'optimisation, les résultats sont nuls pour toutes les exécutions.

J'optimise mon conseiller expert, j'obtiens le même résultat à chaque exécution, bien que les paramètres changent.

Construction du terminal 241


Merci pour votre message. Nous avons trouvé et corrigé le problème.

Une version mise à jour sera publiée ultérieurement

 
stringo:

La toile ne fonctionne pas (elle se compile, mais ne s'affiche pas) depuis plusieurs versions. Est-ce à dessein ? Ou un oubli ?

// y a cinq constructions, ça a marché.

 
MetaDriver:

La toile ne fonctionne pas (elle se compile, mais ne s'affiche pas) depuis plusieurs versions. Est-ce à dessein ? Ou un oubli ?

Bien sûr, ce serait bien si chaque version comprenait une liste de corrections et de fonctionnalités implémentées. Vous n'auriez pas à fouiller aveuglément pour en trouver un nouveau.
 

Le terminal ne trouve toujours pas l'éditeur. J'appuie sur F4 dans le terminal, l'entrée de journal apparaît que l'éditeur n'est pas trouvé :


Le terminal fonctionne en portable, l'éditeur doit également fonctionner en portable. Dans la capture d'écran, le répertoire de données du terminal est ouvert.

Après un court instant, j'appuie une seconde fois sur F4 dans le terminal et l'éditeur démarre.


1. Comment puis-je travailler avec le référentiel de mon profil mql5.com ?

2. Est-ce que MQL Storage fonctionne à partir du nouvel éditeur ?

Dans les paramètres de l'onglet Communauté, mon identifiant et mon mot de passe sont renseignés. Je sélectionne le fichier nécessaire dans le navigateur de l'éditeur et je choisis MQL5 Storage -> Add, et le nom du fichier dans le navigateur est marqué d'un "+" bleu. Il semble être ajouté. Même les fichiers qui ont été ajoutés précédemment, mais qui ont été modifiés par la suite, sont marqués d'un " !" dans un cercle rouge. Il semble y avoir une différence. Mais je ne trouve aucun fichier ajouté dans le référentiel lui-même :



Quel est le problème ?

 
MetaDriver:

La toile ne fonctionne pas (elle se compile, mais ne s'affiche pas) depuis plusieurs versions. Est-ce à dessein ? Ou un oubli ?

// y a cinq constructions, ça a marché.

Avez-vous essayé d'autres cours ? Ils ne fonctionnent pas non plus ?

J'ai examiné la classe Canvas, et les fonctions de MQL5 sont utilisées dans ses méthodes. C'est très probablement la cause du problème. Par exemple, le ?

//+------------------------------------------------------------------+
//| Set font                                                         |
//+------------------------------------------------------------------+
bool CCanvas::FontSet(void)
  {
   return(TextSetFont(m_fontname,m_fontsize,m_fontflags,m_fontangle));
  }

utilise la méthode TextSetFont de MQL5, qui n'a probablement pas encore été implémentée dans MQL4. Cependant, elle est déjà présente dans les descriptions de l'aide. Peut-être ont-ils oublié de l'appliquer.

À propos, les développeurs ont fait un excellent travail avec la coloration syntaxique dans l'éditeur. Il est très utile de distinguer les méthodes de classe des fonctions de langage.

Raison: