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

 

큰 배열의 일부를 단일 Z 값으로 채워야 할 때 다음 구성을 사용합니다.

 ArrayInitialize (ar,Z);     // промежуточный массив размер массива ar = 1000 
ArrayCopy (arr,ar, 5000 );     // основной массив заполняется значением Z c 5000 по 5999 элемент


많은 사람들이 말할 것입니다 - 그것이 더 쉬울 수 있기 때문에 왜 그렇게 어렵습니까?

 ArrayFill (arr,5000,1000,Z);

그러나 알 수 없는 이유로 중간 배열을 사용하는 첫 번째 옵션은 두 번째보다 눈에 띄게 빠릅니다.

 2018.09 . 04 11 : 01 : 17.222 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayFill = 338
2018.09 . 04 11 : 01 : 17.222 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayInitialize + ArrayCopy = 111
2018.09 . 04 11 : 01 : 18.563 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayFill = 301
2018.09 . 04 11 : 01 : 18.563 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayInitialize + ArrayCopy = 122
2018.09 . 04 11 : 01 : 19.717 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayFill = 334
2018.09 . 04 11 : 01 : 19.717 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayInitialize + ArrayCopy = 142
2018.09 . 04 11 : 01 : 21.095 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayFill = 364
2018.09 . 04 11 : 01 : 21.095 TestArrayFill (EURUSD,M4)       Время заполнения через ArrayInitialize + ArrayCopy = 156

몇 년 전에 나는 이미 이 문제에 대해 SD에 썼습니다. 덕분에 문제가 발견되어 수정되었으며 다음 빌드에서는 괜찮을 것이라는 답변을 받았습니다.

그러나 문제가 남아 있습니다.

그리고 MT4의 동일한 테스트:

 2018.09 . 04 11 : 08 : 21.258 TestArrayFill EURUSD,H1: Время заполнения через ArrayInitialize + ArrayCopy = 113
2018.09 . 04 11 : 08 : 21.258 TestArrayFill EURUSD,H1: Время заполнения через ArrayFill = 78
파일:
 
Nikolai Semko :

큰 배열의 일부를 단일 Z 값으로 채워야 할 때 다음 구성을 사용합니다.


많은 사람들이 말할 것입니다 - 그것이 더 쉬울 수 있기 때문에 왜 그렇게 어렵습니까?

그러나 알 수 없는 이유로 중간 배열을 사용하는 첫 번째 옵션은 두 번째보다 눈에 띄게 빠릅니다.

몇 년 전에 나는 이미 이 문제에 대해 SD에 썼습니다. 덕분에 문제가 발견되어 수정되었으며 다음 빌드에서는 괜찮을 것이라는 답변을 받았습니다.

그러나 문제가 남아 있습니다.

그리고 MT4의 동일한 테스트:

이것을 지적 가치가 있습니까?

 
Artyom Trishkin :

이것을 지적 가치가 있습니까?

와우 기능과 미묘함!
세계에서 가장 빠른 알고리즘 거래 언어 어레이로 작업하는 중요한 표준 기능은 구식 MQL4 언어보다 4배 느리게 작동합니다.
여기서 만.

뻔한 쉼터.
수정되었을 때 얼마나 많은 프로그램이 충돌하는지 상상해 보십시오.
 
Nikolai Semko :

와우 기능과 미묘함!
세계에서 가장 빠른 알고리즘 거래 언어 어레이로 작업하는 중요한 표준 기능은 구식 MQL4 언어보다 4배 느리게 작동합니다.
여기서 만.

뻔한 쉼터.
수정되었을 때 얼마나 많은 프로그램이 충돌하는지 상상해 보십시오.

좋은.

그러나 현재 기능으로 - 그것은 나쁩니까?
 
Artyom Trishkin :

좋은.

그러나 현재 기능으로 - 그것은 나쁩니까?
예, 문제를 잘못 설명했음에 틀림없습니다. 그녀의 결정에 대해 이야기하는 것 같았습니다.
당연히 아니지. 나는 문제를 정확하게 공식화하려고 노력했다. 중간 배열이 있는 옵션은 문제에 대한 솔루션이 전혀 아닙니다. 이것은 메모리 관리의 논리를 기반으로 해야 하는 것보다 더 오래 걸리고 추가 메모리 소비로 이어집니다.
 
Artyom Trishkin :

좋은.

그러나 현재 기능으로 - 그것은 나쁩니까?

농담.

노인은 의사를 찾아옵니다. 그는 말한다:

박사님, 허리가 아파요.

- 자, 몸을 굽혀. 아파?

- 아파.

- 더 세게 구부려!

- 아, 그래서 더 쉬운 것 같다...

- 여기! 그래서 가!

)))))))

 
Nikolai Semko :

큰 배열의 일부를 단일 Z 값으로 채워야 할 때 다음 구성을 사용합니다.


많은 사람들이 말할 것입니다 - 그것이 더 쉬울 수 있기 때문에 왜 그렇게 어렵습니까?

그러나 알 수 없는 이유로 중간 배열을 사용하는 첫 번째 옵션은 두 번째보다 눈에 띄게 빠릅니다.

내가 이해할 수없는! 왜 큰 배열의 일부를 하나의 Z 값으로 채우려고 애썼습니까? 또는 어떤 목적으로 어레이에 어떤 데이터를 할당하고 있습니까? 닫기, AVG, RSI 값? 그러나 표시기를 로드한 후 MetaTrader의 메모리에 표시되지 않습니까? 여기에서 나는 0 1의 거대한 배열을 어떻게든 쉽게 탭했고 결국 SOS라는 단어를 받았습니다. S 값에 0을 할당하고 O 값에 1을 할당합니다. 물론 배열의 두 번째 크기에서 더 나은 결과를 얻으려면 도움말을 탭할 수 있습니다. 그런 다음 각 배열 크기의 채우기 시간을 확인합니다. 그런 다음 모두 더하고 4로 나눕니다.
 
Bob1Thec :
내가 이해할 수없는! 왜 큰 배열의 일부를 하나의 Z 값으로 채우려고 애썼습니까? 또는 어떤 목적으로 어레이에 어떤 데이터를 할당하고 있습니까?
그림의 일반 배경(투명도 포함)은 이 방법으로 수행됩니다.
 
fxsaber :
그림의 일반 배경(투명도 포함)은 이 방법으로 수행됩니다.

더 정확하게 그라데이션 배경

 
Nikolai Semko :

더 정확하게 그라데이션 배경

배열을 하나의 값으로 채우는 것이 여기에서 작동한다고 상상하지 않습니다.