OOP, mql5의 템플릿 및 매크로, 미묘함 및 사용 기술 - 페이지 24 1...171819202122232425262728 새 코멘트 Igor Makanu 2020.02.23 10:51 #231 Vict : 이것은 아마도 효과가 있을 것입니다: 그렇게 작동하지 않습니다 #import에 파일 이름이 필요합니다. 빅트 : 나는 단지 이해하지 못했습니다-무엇을 위해 촛불을 태웠습니까? dll에서 연결 관리자를 만들고 싶지 않지만 MT4에서는 어떤 이유로 2개의 EA에서 dll을 2번 호출하면 dll의 새 복사본이 메모리에 생성되지 않습니다(정적 개체가 dll, .Net을 통한 래퍼 - 하나의 dll을 실행하면 충돌하고 2개의 다른 파일은 문제 없음), 그래서 빨리 하고 싶었습니다. mylib.dll 파일을 mylib02.dll에 복사하면 모든 것이 문제 없이 작동합니다. 하지만 매크로 대체를 전역적으로 선언하고 싶습니다. [삭제] 2020.02.23 10:57 #232 Igor Makanu : 그렇게 작동하지 않습니다 이것은 버그/간과처럼 보입니다. 이전 포스트의 PS에 주목 추신: 여전히 정말로 원한다면 이름을 시도하거나 name_dll(점 없이)을 지정하십시오. 아마도 이륙할 것입니다. Igor Makanu 2020.02.23 11:09 #233 Vict : 이것은 버그/간과처럼 보입니다. 이전 포스트의 PS에 주목 MT4에서는 그렇지 않습니다. MT4 dll 자체는 런타임에만 볼 수 있지만 내가 논의하는 것은 컴파일러 자체에서 놓치지 않습니다. 이것이 컴파일러가 건너 뛰는 방법입니다 #import "mylib.dll" #import #import "mylib" #import 그리고 다음과 같이 작성한다면: #import "mylib.dll" //'mylib.dll' - expressions are not allowed on a global scope #import 저것들. 고정 구문 지시문 #import + 따옴표로 묶인 일부 문자열 - 모두 한 줄에 있습니다. 하지만 fig는 알고 있습니다 - 매크로 대체를 통해 #import "mylib.dll"을 내 자신의 조합으로 대체할 수 없는 이유 빅트 : 추신: 여전히 정말로 원한다면 이름을 시도하거나 name_dll(점 없이)을 지정하십시오. 아마도 이륙할 것입니다. 조건부 컴파일로 포함을 수집할 수 없는 이유를 이해하지 못합니까? - 모든 것이 매우 원시적입니다. 어떻게든 MQL에서 작동합니다. [삭제] 2020.02.23 11:27 #234 Igor Makanu : MT4에서는 그렇지 않습니다. MT4 dll 자체는 런타임에만 볼 수 있지만 내가 논의하는 것은 컴파일러 자체에서 놓치지 않습니다. 이것이 컴파일러가 건너 뛰는 방법입니다 그리고 다음과 같이 작성한다면: 저것들. 고정 구문 지시문 #import + 따옴표로 묶인 일부 문자열 - 모두 한 줄에 있습니다. 하지만 FIG는 알고 있습니다. 매크로 대체를 통해 #import "mylib.dll"을 내 자신의 조합으로 대체할 수 없는 이유 조건부 컴파일로 포함을 수집할 수 없는 이유를 이해하지 못합니까? - 모든 것이 매우 원시적입니다. 어떻게든 MQL에서 작동합니다. 왜 당신에게 효과가 없는지 모르겠어, 모든 것이 나를 위해 작동합니다 #define DD "jkjk.dll" #import DD void fn(); #import 이제 다른 Expert Advisors("lib_1.dll", "lib_2.dll")에서 다른 DD를 쉽게 설정할 수 있습니다. [삭제] 2020.02.23 11:32 #235 Vict : 왜 당신에게 효과가 없는지 모르겠어, 모든 것이 나를 위해 작동합니다 이제 다른 Expert Advisors("lib_1.dll", "lib_2.dll")에서 다른 DD를 쉽게 설정할 수 있습니다. 죄송합니다. 잊어버렸습니다. 소스가 µl 단위로 속어 전처리기를 통과합니다. 예, 작동하지 않습니다. Igor Makanu 2020.02.23 11:36 #236 Vict : 죄송합니다. 잊어버렸습니다. 소스가 µl 단위로 속어 전처리기를 통과합니다. 예, 작동하지 않습니다. 일반적으로 무차별 대입은 MQL을 사용하므로 의도한 대로 작동합니다. #ifdef USE_DLL_NUMBER #ifdef USE_DLL_NUMBER02 #import "mylib2.dll" #endif #else #import "mylib.dll" #endif 기본 코드에서 2개의 매크로 대체를 선언합니다. #define USE_DLL_NUMBER #define USE_DLL_NUMBER02 ... 매크로 USE_DLL_NUMBER02로 줄 입니다. 일반적으로 이미 저에게 맞는 것과 비슷합니다. USE_DLL_NUMBER03, USE_DLL_NUMBER04를 쓸 수 있기를 원합니다. Igor Makanu 2020.02.23 12:04 #237 Igor Makanu : ... 매크로 USE_DLL_NUMBER02로 줄 입니다. 일반적으로 이미 저에게 맞는 것과 비슷합니다. USE_DLL_NUMBER03, USE_DLL_NUMBER04를 쓸 수 있기를 원합니다. 일반적으로 무차별 대입의 도움으로이 문제를 해결하는 것으로 나타났습니다. #ifdef USE_DLL_NUMBER01 #define USE_DLL_NUMBER #endif #ifdef USE_DLL_NUMBER02 #define USE_DLL_NUMBER #endif #ifdef USE_DLL_NUMBER03 #define USE_DLL_NUMBER #endif #ifdef USE_DLL_NUMBER04 #define USE_DLL_NUMBER #endif #ifdef USE_DLL_NUMBER05 #define USE_DLL_NUMBER #endif Seric29 2020.02.23 15:31 #238 값으로 작동하는 mql4에서 #if 매크로가 구현되지 않은 이유는 유형의 선택적 개체를 생성하는 것이 가능합니다. #define Znah 0 #define PrmI int Peremen= 6 ; #define PrmD double Peremen= 3.345 ; #if Znah //если больше 0 то появится переменная int Peremen PrmI #else PrmD //иначе появится переменная double Peremen #endif 결과적으로 전체 후속 프로그램을 원하는 유형으로 편집할 수 있습니다. fxsaber 2020.02.25 21:23 #239 이 표현식이 false를 반환하는 것을 본 적이 없습니다. ORDER_TIME_DONE_MSC == DEAL_TIME_MSC 따라서 거래 내역을 기반으로 주문 실행 시간에 대한 통계를 유지하기가 어렵습니다. 시장 주문의 경우 여전히 ORDER_TIME_SETUP_MSC 값과 일치하는 것이 가능하다면 보류 중인 것은 의미가 없습니다. fxsaber 2020.02.26 14:07 #240 바나나일 가능성이 큽니다. const 수정자는 객체가 수정되지 않는다는 것을 보장하지 않습니다. struct A { int i; void f( const A &Value ) { Print (Value.i); // 0 this .i = Value.i + 1 ; Print (Value.i); // 1 } }; void OnStart () { A a; a.f(a); } 아마도 그러한 상황에서 일부 컴파일러는 경고를 발행합니다. 1...171819202122232425262728 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
이것은 아마도 효과가 있을 것입니다:
#import에 파일 이름이 필요합니다.
나는 단지 이해하지 못했습니다-무엇을 위해 촛불을 태웠습니까?
dll에서 연결 관리자를 만들고 싶지 않지만 MT4에서는 어떤 이유로 2개의 EA에서 dll을 2번 호출하면 dll의 새 복사본이 메모리에 생성되지 않습니다(정적 개체가 dll, .Net을 통한 래퍼 - 하나의 dll을 실행하면 충돌하고 2개의 다른 파일은 문제 없음),
그래서 빨리 하고 싶었습니다. mylib.dll 파일을 mylib02.dll에 복사하면 모든 것이 문제 없이 작동합니다. 하지만 매크로 대체를 전역적으로 선언하고 싶습니다.
그렇게 작동하지 않습니다
이것은 버그/간과처럼 보입니다. 이전 포스트의 PS에 주목
추신: 여전히 정말로 원한다면 이름을 시도하거나 name_dll(점 없이)을 지정하십시오. 아마도 이륙할 것입니다.
이것은 버그/간과처럼 보입니다. 이전 포스트의 PS에 주목
MT4에서는 그렇지 않습니다.
MT4 dll 자체는 런타임에만 볼 수 있지만 내가 논의하는 것은 컴파일러 자체에서 놓치지 않습니다. 이것이 컴파일러가 건너 뛰는 방법입니다
그리고 다음과 같이 작성한다면:
저것들. 고정 구문 지시문 #import + 따옴표로 묶인 일부 문자열 - 모두 한 줄에 있습니다.
하지만 fig는 알고 있습니다 - 매크로 대체를 통해 #import "mylib.dll"을 내 자신의 조합으로 대체할 수 없는 이유
추신: 여전히 정말로 원한다면 이름을 시도하거나 name_dll(점 없이)을 지정하십시오. 아마도 이륙할 것입니다.
MT4에서는 그렇지 않습니다.
MT4 dll 자체는 런타임에만 볼 수 있지만 내가 논의하는 것은 컴파일러 자체에서 놓치지 않습니다. 이것이 컴파일러가 건너 뛰는 방법입니다
그리고 다음과 같이 작성한다면:
저것들. 고정 구문 지시문 #import + 따옴표로 묶인 일부 문자열 - 모두 한 줄에 있습니다.
하지만 FIG는 알고 있습니다. 매크로 대체를 통해 #import "mylib.dll"을 내 자신의 조합으로 대체할 수 없는 이유
조건부 컴파일로 포함을 수집할 수 없는 이유를 이해하지 못합니까? - 모든 것이 매우 원시적입니다. 어떻게든 MQL에서 작동합니다.왜 당신에게 효과가 없는지 모르겠어, 모든 것이 나를 위해 작동합니다
이제 다른 Expert Advisors("lib_1.dll", "lib_2.dll")에서 다른 DD를 쉽게 설정할 수 있습니다.왜 당신에게 효과가 없는지 모르겠어, 모든 것이 나를 위해 작동합니다
이제 다른 Expert Advisors("lib_1.dll", "lib_2.dll")에서 다른 DD를 쉽게 설정할 수 있습니다.죄송합니다. 잊어버렸습니다. 소스가 µl 단위로 속어 전처리기를 통과합니다. 예, 작동하지 않습니다.
죄송합니다. 잊어버렸습니다. 소스가 µl 단위로 속어 전처리기를 통과합니다. 예, 작동하지 않습니다.
일반적으로 무차별 대입은 MQL을 사용하므로 의도한 대로 작동합니다.
기본 코드에서 2개의 매크로 대체를 선언합니다.
... 매크로 USE_DLL_NUMBER02로 줄 입니다. 일반적으로 이미 저에게 맞는 것과 비슷합니다. USE_DLL_NUMBER03, USE_DLL_NUMBER04를 쓸 수 있기를 원합니다.
... 매크로 USE_DLL_NUMBER02로 줄 입니다. 일반적으로 이미 저에게 맞는 것과 비슷합니다. USE_DLL_NUMBER03, USE_DLL_NUMBER04를 쓸 수 있기를 원합니다.
일반적으로 무차별 대입의 도움으로이 문제를 해결하는 것으로 나타났습니다.
값으로 작동하는 mql4에서 #if 매크로가 구현되지 않은 이유는 유형의 선택적 개체를 생성하는 것이 가능합니다.
결과적으로 전체 후속 프로그램을 원하는 유형으로 편집할 수 있습니다.따라서 거래 내역을 기반으로 주문 실행 시간에 대한 통계를 유지하기가 어렵습니다.
시장 주문의 경우 여전히 ORDER_TIME_SETUP_MSC 값과 일치하는 것이 가능하다면 보류 중인 것은 의미가 없습니다.
아마도 그러한 상황에서 일부 컴파일러는 경고를 발행합니다.