MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 862

 

큐브라고 하면!

그렇다면 불필요한 "큐브"를 지우는 방법을 알려주십시오.

 
im-zvv :

큐브라고 하면!

그럼 불필요한 "큐브"를 지우는 방법을 알려주세요.

이렇게 하려면 이 "큐브"가 있는 위치, 차지하는 바이트 수, 파일 포인터를 거기로 이동하고 이 위치에 새 값을 기록해야 합니다.

따라서 선의 길이가 다른 경우 이는 현실적이지 않습니다. 원하는 "큐브"까지의 바이트 수를 계산하는 것은 불가능합니다.

 
Alexey Viktorov :

이렇게 하려면 이 "큐브"가 있는 위치, 차지하는 바이트 수, 파일 포인터를 거기로 이동하고 이 위치에 새 값을 기록해야 합니다.

따라서 선의 길이가 다른 경우 이는 현실적이지 않습니다. 원하는 "큐브"까지의 바이트 수를 계산하는 것은 불가능합니다.

분명히 이러한 모든 계산은 처리 시간을 크게 증가시킵니다.

다른 방법을 찾아보겠습니다.

고맙습니다.

 
Alexey Viktorov :

이렇게 하려면 이 "큐브"가 있는 위치, 차지하는 바이트 수, 파일 포인터를 거기로 이동하고 이 위치에 새 값을 기록해야 합니다.

따라서 선의 길이가 다른 경우 이는 현실적이지 않습니다. 원하는 "큐브"까지의 바이트 수를 계산하는 것은 불가능합니다.

중요하지 않고 WinApi를 사용할 수 있다면 FileMapping을 통해 문제를 해결할 수 있다고 생각합니다.

 

나는 모든 것을 시도할 것이다. 예비에 대한 추상 변수가 있는 "빈" 파일을 만드는 것으로 시작하겠습니다. 그러면 받은 데이터를 교체하겠습니다.

효과가 있을 수 있습니다. 문제는 파일의 크기에만 있고 결국 커질 수 있습니다. 각 읽기 전에 새 예비를 생성해야 합니다.

 
mql4에서 new 연산자 를 사용하는 주제에 대한 기사를 찾고 있는데 그러한 기사를 추천할 수 있습니까? 함수와 전역 변수가 있고 많은 비디오를보고 도움말을 여러 번 읽었는데 요점이 무엇인지 이해하지 못한 경우 클래스가 필요한 이유를 누가 간단히 설명 할 수 있습니까?
 
Seric29 :
mql4에서 new 연산자 를 사용하는 주제에 대한 기사를 찾고 있는데 그러한 기사를 추천할 수 있습니까? 함수와 전역 변수가 있고 많은 비디오를보고 도움말을 여러 번 읽었는데 요점이 무엇인지 이해하지 못한 경우 클래스가 필요한 이유를 누가 간단히 설명 할 수 있습니까?

MQL의 새 연산자는 개체 인스턴스에 대한 포인터를 만드는 데만 필요합니다.


MQL 프로그램은 상당히 전문화되어 있고 OOP는 일반적으로 캡슐화에 사용하기 편리합니다. 오늘 위의 CWorkTime 클래스의 예를 제시했습니다 https://www.mql5.com/ru/forum/160683/page861#comment_11840254

Expert Advisor의 작업 시간을 제한하려면 캡슐화를 사용하여 다음과 같이 작업 시간 제한 개체의 여러 인스턴스를 만드는 것이 편리합니다.

 int OnInit ()
{
   Work1= new CWorkTime(StartHour_1,StartMinute_1,StopHour_1,StopMinute_1);
   Work2= new CWorkTime(StartHour_2,StartMinute_2,StopHour_2,StopMinute_2);
}

.....


void OnTick ()
  {

if (Work1.Disable() || Work1.Disable())
{
 Comment ( "Не торговое время!!!" );
 }
else
{......

저것들. 이제 내 예에서 Expert Advisor에 대해 2개의 시간 간격을 설정할 수 있습니다.

추신: 읽기 - "객관적으로" 기사의 포럼 섹션 검색

Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2019.05.26
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 
Igor Makanu :

클래스가 이러한 변수와 함수를 더 많이 결합한다는 것은 분명하며, 나머지 정도에서는 내가 올바르게 이해하면 강력한 무언가를 할 수 있습니다. 모든 것이 함수로 구성될 수 있고 클래스가 함수보다 빠르게 작동하고 데이터, 포럼에서 더 균등 하고 경제적으로 메모리를 사용한다는 글을 읽었습니다.

 

이 코드가 작동하지 않는 이유는 무엇입니까?

#property version    " 1.00 "
#property strict
string iComments="\n 
 class CArray : public Cobject 
{
public :
     double m_Array[ 100 ];
}//дальше в OnInit ()
 {Carray *arr = new CArray;
   arr.m_Array[ 22 ] = 1.23456 ;

....
}

콜론 ::을 통해 클래스를 설명해야 할 수도 있습니다. 아이디어의 의미는 다른 포인터를 가리키는 포인터를 만드는 것입니다.

 

안녕하세요!

따옴표 힌트를 제공한 Alexey Viktorov 에게 다시 한 번 감사드립니다. 모든 것이 제대로 작동합니다. 그러나 이번 월요일에 상황이 발생했습니다. 독일인은 거래하고 영국인은 하루를 쉬었습니다. 그리고 유로에서 포지션을 여는 조건에서 파운드의 오래된 가치가 사용되었다는 것이 밝혀졌습니다. 따라서 요청: 두 기호가 그날 거래되는 코드에서 확인을 설정하는 방법을 알려주십시오.

고맙습니다.