Erreurs, bugs, questions - page 1958

 
Vitaly Muzichenko:

La façon correcte de le dire n'est pas que le terminal est orienté vers Intel, mais qu'Intel est orienté vers l'ordinateur. Même avec des fréquences plus basses, Intel a toujours été supérieur à AMD de plusieurs ordres de grandeur. Je ne pense pas qu'il y ait de comparaison possible en termes de consommation d'énergie et de température.


Ne vous y trompez pas, AMD a toujours été moins cher en termes de performance par rapport à l'ordinateur/argent, et au début des années 2000, il a également surpassé Intel - souvenez-vous des Atlons.

 
Anton Ohmat:
La question est ouverte, quel est le meilleur xeon 2pc sur une carte ou i7 2pc sur 2 cartes.

Les Xeons sont différents - regardez les performances et le prix, tout le reste est secondaire.

Oh, regardez aussi la consommation d'énergie - au fil des ans, il pourrait y avoir une différence significative.
 
Aleksey Vyazmikin:

Ne vous y trompez pas, AMD a toujours été moins cher en termes de coût/bénéfice calcul/argent, et au début des années 2000, il a surpassé Intel en termes de performances - souvenez-vous des Atlons.

Je les ai échangés pendant 5 ans, et pas seulement des pièces mais des assemblages d'ordinateurs. Peut-être qu'au début des années 2000, ils étaient meilleurs. La voiture Volga était autrefois une super voiture de classe affaires aussi... bien que certaines personnes en conduisent encore à ce jour.

 
Vitaly Muzichenko:

Je les ai échangés pendant 5 ans, et pas seulement des pièces, mais des assemblages d'ordinateurs. Peut-être qu'au début de l'an 2000, ils étaient meilleurs. La Volga était également une super voiture de classe affaires... bien que certaines personnes en conduisent encore aujourd'hui.


Si vous étiez dans le métier, vous devriez être au courant des faits que j'ai mentionnés. Oui, il y a eu une période où AMD était inférieur en performance, mais pas en performance boursière. Et maintenant il y aRyzen et c'est très intéressant de voir quels résultats il aura avec MT4/MT5 !

 

Erreur lors de la compilation

struct A {
struct B {
} static const b; //error: 'static' - semicolon expected
};
mais sinon...
struct A {
static const
struct B {
} b;
};
ok. Mais la première forme d'enregistrement est plus familière
 

MQL est OK, mais C++ génère l'erreur E2040

void OnStart()
{
        int i1 = 1, const i2 = 2; //нормально
}
 

Forum sur le trading, les systèmes de trading automatisé et les tests de stratégies de trading

Bugs, bugs, questions

A100, 2017.08.12 19:50

Au moins ici (*) est un bug, en plus de la méthode TrendTenkan par elle-même (personne ne l'appelle)

enum ENUM_TYPE_TREND {
   TYPE_TREND_FLAT       =3,           // no trend
};
class CSignalIchimoku {
        bool TrendTenkan(const double DiffTenkan);
};
bool CSignalIchimoku::TrendTenkan(const double DiffTenkan)
{
//...
        return(TYPE_TREND_FLAT); //(*) в скобках должно быть true, false или логическое выражение
//...
}
En général, le compilateur aurait dû émettre un avertissement dans un tel cas (*), mais il ne le fait pas.

Je n'ai pas vu le bug. Cela devrait fonctionner

if (TYPE_TREND_FLAT)
// ...
 

S'agit-il d'un bogue ou du comportement correct ?

#define  AMOUNT (#ifdef __MQL5__ 1 #else 2 #endif)

void OnStart()
{
  int Array1[AMOUNT]; // 'AMOUNT' - undeclared identifier
  int Array2[#ifdef __MQL5__ 1 #else 2 #endif]; // no problem
}
 

N'est-ce pas une erreur qu'une méthode const puisse encore changer le champ de sa structure ?

struct STRUCT
{
  int i;
  
  void Func( STRUCT &Struct ) const
  {
    Struct.i = 7;
  }
};

void OnStart()
{
  STRUCT Struct;
  
  Struct.Func(Struct);
  
  Print(Struct.i); // 7
}
 
Quelle est la différence entre les deux lignes ?
void OnStart()
{
  int i1 = (1 / 2) ? 1 : 0; // expression not boolean
  int i2 = (0) ? 1 : 0;     // no problem
}
Raison: