Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1677

 
pribludilsa #:
Pourquoi le compilateur donne-t-il l'avertissement de conversion implicite d'enum ?
long type = PositionGetInteger(POSITION_TYPE); 
 
pribludilsa #:
Pourquoi le compilateur donne-t-il l'avertissement de conversion implicite d'enum ?


ENUM_POSITION_TYPE type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
 
Taras Slobodyanik #:


+++
 
Merci, mes frères, vous me sauvez la vie.
 
pribludilsa #:
Pourquoi le compilateur génère-t-il l'avertissement de conversion implicite d'enum ?
Parce que PositionGetInteger(POSITION_TYPE) ; renvoie une valeur de type long et doit être converti en type enum.
 
Galim_V #:

Dans le script.

Cela fonctionne correctement. Sélectionne les index sans répétition des valeurs du tableau à vérifier.

#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//обьявим класс
class Сleaner
 {
 public:     
         Сleaner() { Alert("Конструктор");
          }
           ~Сleaner() { Alert("Деструктор"); }
  void come(int &array[],int &re[]){ 
      int n=0; 
      ZeroMemory(re);   
  for(int i=0; i<ArraySize(array); i++) {
    if(ArraySearch(re, array[i])==-1) {
      n++;
      ArrayResize(re,n);
      re[n-1]=array[i];
      Print(" n =",n);
     }
   }
 }

private:
          int ArraySearch(int& m[], int e)
       {
        for(int i=0; i<ArraySize(m); i++) {
        if(m[i]==e){ 
        Print(" e =",e,", ArraySize(m) =",ArraySize(m)," ,m[i] =",m[i]," ,i =",i );
       return(i);
       }
       }
  return(-1);
    }
 };
Сleaner pi;
int arr[]= {2,2,7,7,4,4,6,6,8,8,9};
int res[];
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
    pi.come(arr,res);
     for(int z=0;z<ArraySize(res);z++)
  Print(res[z]);
  }
 
je ne trouve pas comment dans le code pour l'impression, insérer le numéro de version à partir de #property version"1.07", aucune option de ce type ? le nom du programme est là, pourquoi la version n'y est pas aussi ?

 
Fast235 #property version"1.07", aucune possibilité de ce genre ? le nom du programme est là, pourquoi la version n'est pas là aussi ?

Non. Et peu importe le nombre de fois où je l'ai demandé, la réponse a toujours été la même : le silence. ;)

 
Fast235 #property version"1.07", aucune option de ce type ? le nom du programme est là, pourquoi la version n'y est pas ?

comme ça :

#property copyright "Maxim A.Kuznetsov"
#property link      "https://www.luxtrade.tk"
#property version   "1.00"

#define  VERSION "1.023"
#property version VERSION
void OnStart()
{
   PrintFormat("Version %s",VERSION);
}
 
Maxim Kuznetsov #:

comme ça :

Mais la question est de savoir pourquoi il n'y a pas d'accès à...

version

? ??

Oui et à

copyright

и

link

? ??