오류, 버그, 질문 - 페이지 1958

 
Anton Ohmat :

동일한 주파수에서 4.2 및 i7 5960으로 오버클럭된 FX8320을 테스트했습니다(가격은 훨씬 더 높고 최신임). 후자는 동일한 코어 수에서 동일한 최적화로 5배 빠른 속도를 보여주었습니다. 아마도 테스트는 프로세서의 참신함에 비례하지 않지만 여전히 주파수는 동일합니다.

단말기가 정보를 위해 투옥된다는 생각이 있었습니다. 그렇습니까? 그렇다면 무엇 아래


제외되지 않습니다. 그건 그렇고, MT4에서도 MT4가 2채널보다 단일 채널 메모리에서 더 빠르게 작동한다는 사실을 알아차렸습니다. 작년 여름 AMD에서였습니다.

http://cpuboss.com/cpus/Intel-Core-i7-5960X-vs-AMD-FX-8320 데이터를 믿는다면 5배 차이가 없어야 합니다. 안정성이 확인된 후에만 오버클럭킹을 비교할 필요가 있습니다. 아마도 과열이 있었고 AMD가 스로틀링을 시작했을 것입니다.

그러나 같은 링크의 돌 가격에주의하십시오. 가격 차이는 12 배입니다!

더 공정한 비교를 위해 가격이 절반인 Ryzen 7 1800X와 비교할 가치가 있으며 이 리소스의 데이터로 판단하면 http://www.ixbt.com/cpu/amd-r7-1800x.shtml 작동합니다. 많은 작업에서 더 빠릅니다.

 
Vitaly Muzichenko :

단말기가 인텔용이 아니라 인텔이 컴퓨터용으로 날카롭다고 하는게 더 맞겠죠. 더 낮은 주파수에서도 Intel은 항상 AMD보다 몇 배나 높았습니다. 소비와 온도 조건도 비교할 수 없다고 생각합니다


오도하지 마십시오. AMD는 자산 수익률 계산/돈 측면에서 항상 저렴했으며 2000년대 초반에는 성능 측면에서 Intel을 능가했습니다. Athlones를 기억하십시오.

 
Anton Ohmat :
질문이 열려 있습니다. 한 보드에 xeon 2pcs 또는 2 보드에 i7 2pcs가 더 좋습니다.

Xeon은 다릅니다. 성능과 가격만 보고 나머지는 부차적인 것입니다.

그리고 전기 소비량을 살펴보십시오. 수년에 걸쳐 상당한 차이가 있을 수 있습니다.
 
Aleksey Vyazmikin :

오도하지 마십시오. AMD는 자산 수익률 계산/돈 측면에서 항상 저렴했으며 2000년대 초반에는 성능 측면에서 Intel을 능가했습니다. Athlones를 기억하십시오.

나는 5년 동안 그것들을 교환했는데, 예비 부품뿐만 아니라 컴퓨터 어셈블리도 마찬가지였습니다. 아마도 2000년대 초반에는 더 나았을 것입니다. "Volga"라는 자동차는 한때 비즈니스 클래스의 슈퍼카였습니다. 일부는 오늘날까지도 운전하고 있습니다.

 
Vitaly Muzichenko :

나는 5년 동안 그것들을 교환했는데, 예비 부품뿐만 아니라 컴퓨터 어셈블리도 마찬가지였습니다. 아마도 2000년대 초반에는 더 나았을 것입니다. "Volga"라는 자동차는 한때 비즈니스 클래스의 슈퍼카였습니다. 일부는 오늘날까지도 운전하고 있습니다.


그들이 거래했다면 내가 인용한 사실에 대해 알아야 합니다. 네, AMD가 성능 면에서는 열등했지만 자본 수익률 면에서는 그렇지 않은 시기가 있었습니다. 이제 Ryzen이 있으며 MT4/MT5로 작업할 때 어떤 결과를 얻을지 매우 흥미로웠습니다!

 

컴파일 중 오류

 struct A {
struct B {
} static const b; //error: 'static' - semicolon expected
};
그리고 그래서
 struct A {
static const
struct B {
} b;
};
좋아. 그러나 첫 번째 형태의 글쓰기가 더 친숙합니다.
 

MQL은 정상이지만 C++에서 오류 E2040을 생성합니다.

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

거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼

오류, 버그, 질문

A100 , 2017.08.12 19:50

TrendTenkan 메서드 자체(아무도 호출하지 않음) 외에 최소한 (*) 오류가 있습니다.

 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 или логическое выражение
//...
}
일반적으로 컴파일러는 그러한 (*) 경우에 경고를 발행했어야 하지만 그것은 침묵합니다

오류가 발생하지 않았습니다. 이것은 작동해야합니다

 if (TYPE_TREND_FLAT)
// ...
 

이것은 버그입니까 아니면 올바른 동작입니까?

 #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
}
 

const 메소드가 여전히 구조의 필드를 변경할 수 있다는 것은 실수가 아닙니까?

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

void OnStart ()
{
  STRUCT Struct;
  
  Struct.Func(Struct);
  
   Print (Struct.i); // 7
}