MQL5: 구조에 대해 Pack( integer_value ) 속성이 추가되었습니다. 이를 통해 구조 내 필드 위치의 정렬을 설정할 수 있습니다. 이는 DLL 작업 시 때때로 필요합니다. integer_value에 가능한 값은 1, 2, 4, 8, 16입니다. 속성이 정의되지 않은 경우 기본값은 1바이트 뽑기 - pack(1)입니다.
사용 예:
//+------------------------------------------------------------------+//| Default packing |//+------------------------------------------------------------------+struct A
{
char a;
int b;
};
//+------------------------------------------------------------------+//| Specified packing |//+------------------------------------------------------------------+struct B pack( 4 )
{
char a;
int b;
};
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart ()
{
Print ( "sizeof(A)=" , sizeof (A));
Print ( "sizeof(B)=" , sizeof (B));
}
//+------------------------------------------------------------------+
여기에 또 다른 흥미로운 과제가 있습니다. 내장된 ArraySort보다 배열 정렬 기능을 더 빠르게 만드는 것입니다.
그리고 모든 구조체의 크기를 모든 변수의 크기로 나누는 것이 보장되는 것은 무엇입니까?
구조체 배열(길이는 sizeof(int)의 배수)을 int[] 배열로 변환하고 그 반대로 변환하는 빠른 구현 에 대해 브레인스토밍할 수 있습니까?
///
구조에 대한 설명 직후에 이 구조와 배열을 포함하는 공용체로 몇 줄을 더 씁니다.
각 구조 뒤에 작성할 필요도 없지만 템플릿을 사용할 수 있어 누구에게나 더 편리합니다.
그리고 모든 구조체의 크기를 모든 변수의 크기로 나누는 것이 보장되는 것은 무엇입니까?
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
MQL4 및 MQL5에서 Digits()를 무시하고 숫자(따옴표 제외)의 쉼표 뒤 소수 자릿수 가져오기
fxsaber , 2018.12.07 15:12
구조체 배열( 길이는 sizeof(int)의 배수임 )을 int[] 배열로 변환하고 그 반대로 변환하는 빠른 구현 에 대해 브레인스토밍할 수 있습니까?
일반적으로 솔루션은 동일한 링크에 있지만 다양성으로 인해 브레이크가 있습니다. 따라서 다중성은 충분히 이해할 수 있는 추가입니다. 상태.
도 나타났다
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
MetaTrader 5 플랫폼 빌드 1930의 새 버전: MQL5의 플로팅 차트 창 및 .Net 라이브러리
MetaQuotes Software Corp. , 2018.10.25 17:18
속성이 정의되지 않은 경우 기본값은 1바이트 뽑기 - pack(1)입니다.
사용 예:
결론:
구조의 정렬에 대한 자세한 내용은 MSDN 에서 확인할 수 있습니다.
구조를 설명한 직후에 이 구조와 배열을 포함하는 공용체로 몇 줄을 더 작성합니다.
각 구조 뒤에 작성할 필요도 없지만 템플릿을 사용할 수 있어 누구에게나 더 편리합니다.
이해하지 못했습니다. 참여를 원하시면 자신의 버전을 작성해 주세요.
구조체 배열(길이는 sizeof(int)의 배수)을 int[] 배열로 변환하고 그 반대로 변환하는 빠른 구현 에 대해 브레인스토밍할 수 있습니까?
왜 int에서? 주문이 아니라?
(그리고 long은 더 길어질 것입니다 - 더 빨리 복사될 것입니다)
왜 int에서? 주문이 아니라?
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
MQL4 및 MQL5에서 Digits()를 무시하고 숫자(따옴표 제외)의 쉼표 뒤 소수 자릿수 가져오기
fxsaber , 2018.12.07 15:12
실용적인 응용 - 자원을 통한 빠른 데이터 교환. 내 버전은 너무 다양해서 속도가 느려집니다.
당신의 속도가 더 빠른 것 같습니다 :)
속도를 많이 내도록 노력하겠습니다.
이해하지 못했습니다. 참여를 원하시면 자신의 버전을 작성해 주세요.
그래서 그는 썼다 .
일반적으로 솔루션은 동일한 링크에 있지만 다양성으로 인해 브레이크가 있습니다. 따라서 다중성은 충분히 이해할 수 있는 추가입니다. 상태.
도 나타났다
누가 이 다양성을 통제할 것인가?