mql5 언어의 특징, 미묘함 및 작업 방법 - 페이지 46

 

이 분기의 이름은 "mql5 언어의 특징, 미묘함 및 작업 방법"이지만 대신 45페이지 동안 이미 MT5와 관련된 거래/틱 작업 및 기타 쓰레기에 대한 논의가 있었습니다. 프로그래밍 언어. 따라서 이 주제는 프로그래머에게 정말 필요하고 유용할 수 있습니다. 사람들은 흥미로운 기능과 디자인을 공유하지만 다른 쓰레기 더미로 바뀌었습니다.

 
알렉세이 나보이코프 :

이 분기의 이름은 "mql5 언어의 특징, 미묘함 및 작업 방법"이지만 대신 45페이지 동안 이미 MT5와 관련된 거래/틱 작업 및 기타 쓰레기에 대한 논의가 있었습니다. 프로그래밍 언어. 따라서 이 주제는 프로그래머에게 정말 필요하고 유용할 수 있습니다. 사람들은 흥미로운 기능과 디자인을 공유하지만 다른 쓰레기 더미로 바뀌었습니다.

불행히도 그렇습니다. 여기서 질문과 토론은 전혀 해서는 안 됩니다.
 
알렉세이 나보이코프 :

이 분기의 이름은 "mql5 언어의 특징, 미묘함 및 작업 방법"이지만 대신 45페이지 동안 이미 MT5와 관련된 거래/틱 작업 및 기타 쓰레기에 대한 논의가 있었습니다. 프로그래밍 언어. 따라서 이 주제는 프로그래머에게 정말 필요하고 유용할 수 있습니다. 사람들은 흥미로운 기능과 디자인을 공유하지만 다른 쓰레기 더미로 바뀌었습니다.

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

라이브러리: TypeToBytes

fxsaber , 2017.07.11 15:40

 // Чтение/Запись private-полей простых структур

#include <TypeToBytes.mqh>

template < typename T>
struct STRUCT
{
private :
  T Data; // private-поле
  
public :
  T GetData( void ) const
  {
     return ( this .Data);
  }
};

void OnStart ()
{    
  STRUCT< int > Struct = { 0 };  
  
  _W(Struct) = 2 ;           // Write-доступ к private-полю
   Print (Struct.GetData()); // убедились штатно, что это так
  
   Print (_R(Struct)[ 0 ]);     // Read-доступ к private-полю
}
 
fxsaber :
외부에서 프라이빗 필드에 액세스해야 하는 이유는 무엇입니까? 이것은 일종의 변태입니까? ) 먼저 필드를 private로 선언한 다음 액세스를 시도합니다. 그리고 읽기뿐만 아니라 쓰기에도! 흠 ... 정말 "미묘함과 작업 방법"입니다))
 
알렉세이 나보이코프 :
외부에서 프라이빗 필드에 액세스해야 하는 이유는 무엇입니까? 이것은 일종의 변태입니까? ) 먼저 필드를 private로 선언한 다음 액세스를 시도합니다. 그리고 읽기뿐만 아니라 쓰기에도! 흠 ... 정말 "미묘함과 작업 방법"입니다))

프라이빗 PR입니다!

 
프로그래머 여러분, 주목하십시오! 우리는 다른 사람들의 클래스를 해킹하고 무자비하게 개인 필드를 변경하는 위험한 해커가 있습니다! 조심하세요, 수업 잘 들으세요.
 
// Объяснение, почему static-поля структур не являются на самом деле ее полями
// Поэтому структура может быть простой, даже если ее static-поле является объектом
struct STRUCT
{
  static string Str;
  int i;
};

string STRUCT::Str = NULL;

union UNION
{
  STRUCT Struct; // для сложной структуры была бы ошибка
  int i;
};

void OnStart()
{
  Print(sizeof(STRUCT)); // sizeof(int) == 4
}
 
fxsaber :

프라이빗 PR입니다!

주요 클래스 해커로서 더 어려운 작업을 처리하는 것이 좋습니다. 위치가 아닌 이름으로 개인 필드에 액세스할 수 있도록 합니다(위치가 매우 신뢰할 수 없기 때문에). 당연히 매크로 형식이어야 합니다. 원칙적으로 이러한 기능은 소스 코드를 편집하지 않고 다른 사람의 라이브러리에서 수정하려는 경우 유용할 수 있습니다.
 

누구든지 (문자열이 아닌) 주어진 구조 필드로 구조 배열을 저렴하게 정렬한 적이 있습니까?

int, datetime 및 double 3개의 필드가 있는 구조가 있고 이 구조로 구성된 데이터로 채워진 배열이 있다고 가정해 보겠습니다. 배열의 각 셀에서 구조의 필드가 채워집니다.

이 필드를 기준으로 이 배열을 정렬하는 방법은 무엇입니까?

 
Artyom Trishkin :

누구든지 (문자열이 아닌) 주어진 구조 필드로 구조 배열을 저렴하게 정렬한 적이 있습니까?

int, datetime 및 double 3개의 필드가 있는 구조가 있고 이 구조로 구성된 데이터로 채워진 배열이 있다고 가정해 보겠습니다. 배열의 각 셀에서 구조 필드가 채워집니다.

이 필드를 기준으로 이 배열을 정렬하는 방법은 무엇입니까?

이 같은?

https://www.mql5.com/en/code/9336

ArrayEx
ArrayEx
  • 투표: 4
  • 2009.11.19
  • Андрей
  • www.mql5.com
Библиотека реализует 3 основных функции работы с двумерными массивами: сортировка, группировка, выборка - по множественным критериям.