MQL5 컴파일러는 클래스와 이에 대한 포인터를 구분하지 않습니다. - 페이지 9

 
fxsaber :

나는 이것이 MQL에 없다고 확신했다! 나는 내 머리에 있는 이 다리가 어디에서 자라지 않았는지 궁금합니다 ...

KB 또는 설명서에 이에 대한 예가 하나 이상 있는지 궁금합니다. 방금 본거 아니야...?

이러한 우연의 일치는 거의 발생하지 않습니다. 왜냐하면. 이 포럼과 다른 포럼의 또 다른 잘 알려진 친구는 가을에 포인터가 일반적인 기본 유형과 같은 포인터이며 그로부터 무엇을 얻을 수 있다고 대답했습니다. 그러나 지금은 작동하고 신은 약합니다.

 
fxsaber :

나는 이것이 MQL에 없다고 확신했다! 나는 내 머리에 있는 이 다리가 어디에서 자라지 않았는지 궁금합니다 ...

하나가 아닙니다.

 
fxsaber :

KB 또는 설명서에 이에 대한 예가 하나 이상 있는지 궁금합니다. 방금 눈치채지 않았나...

이것만 찾았습니다

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

오류, 버그, 질문

일리아스 , 2018.11.22 09:37

임시 해결책으로 '!' 연산자를 사용하십시오. (논리적 아님)

 class A {};

A* a = NULL ;

bool b1 = !!a && true ;
bool b2 = true && !!a;


우리는 해결책을 생각할 것입니다(많은 코드가 있는 지금 동작을 변경할 수 있습니까?)
포인터의 경우 bool로의 캐스트는 포인터가 가리키는 개체가 아니라 포인터에 대한 작업일 수 있습니다.

이 경우 객체에 대한 작업을 수행하려면 다음과 같은 코드를 작성해야 합니다.

 class A {};

A* a = NULL ;

bool b1 = * a && true ;
bool b2 = true && * a;

캐스트 연산자도 추가하고 싶지만 이 작업은 (매우) 우선 순위가 낮습니다.
 
fxsaber :

이것만 찾았습니다

2018년 11월 22일? 3년, 네...

 
Ilya Malev :

2018년 11월 22일? 3년, 예...

기능 발표가 아니라 사용 예시였습니다.

 
fxsaber :

기능 발표가 아니라 사용 예시였습니다.

그냥 음란하게 설명하지 않습니다 ...

 

다음은 최근 인용문입니다.

Ilyas :

역참조 작업(핸들에서 실제 포인터 가져오기)은 "내부"(사용자 정의 가 아님) 코드이며 비용이 많이 드는(없는 것에 비해) 코드입니다.

물론 관리자가 완전히 다른 것을 염두에 두었을 수도 있습니다 ...

그러나이 작업에 대한 문서에는 전혀 없습니다. 작업이 3년 동안 효과가 있었고 도움말이나 포럼에 반영되지 않은 것은 비현실적입니다.

 
fxsaber :

이것만 찾았습니다

네, 그게 아닙니다. *, & 연산자 추가에 관해서는 A100과 한 번 같은 스레드에서 오랫동안 요청했는데 추가되었던 걸로 기억합니다.
 
다음은 해당 토론에 대한 링크 입니다. 거의 3.5년은 된 것 같습니다. 시간이 어떻게 가는지...
 
Alexey Navoykov :
다음은 해당 토론에 대한 링크 입니다. 거의 3.5년은 된 것 같습니다. 시간이 어떻게 가는지...

그리고 이러한 작업이 실제로 도입되기까지 얼마나 더 많은 시간이 흘렀는지 ... 한 바람은 아마도 알고 있습니다. 그리고 네, 많은 성공 없이 몇 년 동안 포럼에서 아주 중요한 것들이 제기될 수 있습니다.