오류, 버그, 질문 - 페이지 2867 1...286028612862286328642865286628672868286928702871287228732874...3184 새 코멘트 Andrey Khatimlianskii 2020.10.05 19:14 #28661 A100 : #define TMP VALUE // TMP = 10 VALUE 여기에서 나는 그것을 다르게 해석했습니다. 대체되는 것은 상수가 아니라 결국 매크로입니다. 덕분에. A100 2020.10.05 20:06 #28662 fxsaber : 따라서 MACRO 및 MACRO2와 작동 방식이 동일합니다. 최종 사용자의 경우 - 예, 두 개의 매개변수가 있는 하나의 매크로가 사용됩니다. A100 2020.10.06 20:45 #28663 유용하고 유해한 경고에 대한 질문: #ifdef __cplusplus class A { A( int , int y ) : //(1) x( x ), //(2) warning: 'A::x' is initialized with itself y( y ) //(3) {} int x, y; }; #endif Shell C++ 스마트 컴파일러는 무엇을 합니까? 바르게! 명백한 오타가 있고 (1) 행 - 'x'가 누락된 경우 A( int x, int y ) : - 경고를 표시합니다 . 'A::x'는 자체적으로 초기화됩니다. 그리고 모든 것이 정상인 곳 - 아무것도 제공하지 않습니다 !!! 그리고 MQL 컴파일러는 무엇을 합니까? #ifdef __MQL__ class A { A( int , int y ) : //(1) warning: declaration of 'y' hides member x( x ), //(2) нормально y( y ) //(3) {} int x, y; }; #endif 그것이 필요하고 명백한 오타 - 침묵하지만 필요하지 않고 모든 것이 정상인 경우 - 경고: 'y' 선언은 멤버를 숨깁니다. 왜 반대인가요? Andrey Dik 2020.10.06 22:35 #28664 2632 시각적 테스트 가 일시 중지되면 마우스로 드래그하거나 화살표 키를 사용하여 차트를 볼 수 없습니다(되감기/앞으로). Roman 2020.10.06 23:08 #28665 매크로의 주제가 범람한 것을 보고 저도 질문이 있습니다 int와 uint가 C와 D를 대체하는 이유는 무엇입니까? 코드는 long 및 ulong으로 대체되어야 합니다. 아니면 컴파일러가 너무 똑똑해서 차원 280을 보고 최적화합니까? #define A 280 // int #define B 280 U // unsigned int #define C 280 L // long #define D 280 LU // unsigned long #define K 28.0 // double //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart () { Print ( typename (A)); Print ( typename (B)); Print ( typename (C)); Print ( typename (D)); Print ( typename (K)); } 2020.10 . 07 01 : 57 : 47.788 TestScript (EURUSD,M1) int 2020.10 . 07 01 : 57 : 47.788 TestScript (EURUSD,M1) uint 2020.10 . 07 01 : 57 : 47.788 TestScript (EURUSD,M1) int 2020.10 . 07 01 : 57 : 47.788 TestScript (EURUSD,M1) uint 2020.10 . 07 01 : 57 : 47.788 TestScript (EURUSD,M1) double 두 번째 질문입니다. float에 대한 컴파일 오류가 발생한 이유 #define L 28.0 F // float //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart () { Print ( typename (L)); }'TestScript.mq5' TestScript.mq5 1 1 'F' - undeclared identifier TestScript.mq5 36 19 'F' - some operator expected TestScript.mq5 36 19 2 errors, 0 warnings 3 1 세 번째 질문입니다. #define E '\n' // char #define F B'111111111' // int #define J "" // string //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart () { Print ( typename (E)); Print( typename (F)); Print ( typename (J)); } 2020.10 . 07 04 : 55 : 00.406 TestScript (EURUSD,M1) ushort 2020.10.07 05:41:01.204 TestScript (EURUSD,M1) uint 2020.10 . 07 04 : 55 : 00.406 TestScript (EURUSD,M1) string Vladimir Simakov 2020.10.07 03:29 #28666 Roman : 매크로의 주제가 범람한 것을 보고 저도 질문이 있습니다 int와 uint가 C와 D를 대체하는 이유는 무엇입니까? 코드는 long 및 ulong으로 대체되어야 합니다. 아니면 컴파일러가 너무 똑똑해서 차원 280을 보고 최적화합니까? 두 번째 질문입니다. float에 대한 컴파일 오류가 발생한 이유 세 번째 질문입니다. 1. L은 길지만 C++입니다. LL을 시도 2.f 3 '\n'은 문자입니다. Roman 2020.10.07 04:07 #28667 Vladimir Simakov : 1. L은 길지만 C++입니다. LL을 시도 2.f 3 '\n'은 문자입니다. 네. 그것은 효과가 있었다. 그러나 어떤 문자 유형 '+'는 ushort를 표시합니다. 문자열 크기 2바이트로 대체 #define A 280 // int #define B 280 U // unsigned int #define C 280 LL // long #define D 280 LLU // unsigned long #define E 28.0 // double #define F 28.0 f // float #define J '+' // char #define K B '111111111' // int //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { Print ( typename (A)); Print ( typename (B)); Print ( typename (C)); Print ( typename (D)); Print ( typename (E)); Print ( typename (F)); Print ( typename (J)); Print ( typename (K)); } 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) int 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) uint 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) long 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) ulong 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) double 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) float 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) ushort 2020.10 . 07 07 : 01 : 07.127 TestScript (EURUSD,M1) uint Vladimir Simakov 2020.10.07 04:42 #28668 Roman : 네. 그것은 효과가 있었다. 그러나 어떤 문자 유형 '+'는 ushort를 표시합니다. 문자열 크기 2바이트로 대체 왜 그래? 이것은 버그입니까, 아니면 기능입니까? Roman 2020.10.07 04:48 #28669 Vladimir Simakov : 그리고 왜 그렇게? 이것은 버그입니까, 아니면 기능입니까? 예, 누가 압니까? 유니코드 때문일까요? Vladimir Simakov 2020.10.07 05:35 #28670 Roman : 예, 누가 압니까? 유니코드 때문일까요? 아니요, 개발자의 논리 자체는 충분히 이해할 수 있지만, 저는 차라리 제가 필요할 때 u'sh'를 명시적으로 표시하고 싶습니다. 1...286028612862286328642865286628672868286928702871287228732874...3184 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
여기에서 나는 그것을 다르게 해석했습니다.
대체되는 것은 상수가 아니라 결국 매크로입니다.
덕분에.따라서 MACRO 및 MACRO2와 작동 방식이 동일합니다.
최종 사용자의 경우 - 예, 두 개의 매개변수가 있는 하나의 매크로가 사용됩니다.
Shell C++ 스마트 컴파일러는 무엇을 합니까? 바르게! 명백한 오타가 있고 (1) 행 - 'x'가 누락된 경우
- 경고를 표시합니다 . 'A::x'는 자체적으로 초기화됩니다. 그리고 모든 것이 정상인 곳 - 아무것도 제공하지 않습니다 !!!
그리고 MQL 컴파일러는 무엇을 합니까?
그것이 필요하고 명백한 오타 - 침묵하지만 필요하지 않고 모든 것이 정상인 경우 - 경고: 'y' 선언은 멤버를 숨깁니다.
왜 반대인가요?2632
시각적 테스트 가 일시 중지되면 마우스로 드래그하거나 화살표 키를 사용하여 차트를 볼 수 없습니다(되감기/앞으로).
매크로의 주제가 범람한 것을 보고 저도 질문이 있습니다
int와 uint가 C와 D를 대체하는 이유는 무엇입니까?
코드는 long 및 ulong으로 대체되어야 합니다.
아니면 컴파일러가 너무 똑똑해서 차원 280을 보고 최적화합니까?
두 번째 질문입니다.
float에 대한 컴파일 오류가 발생한 이유
세 번째 질문입니다.
매크로의 주제가 범람한 것을 보고 저도 질문이 있습니다
int와 uint가 C와 D를 대체하는 이유는 무엇입니까?
코드는 long 및 ulong으로 대체되어야 합니다.
아니면 컴파일러가 너무 똑똑해서 차원 280을 보고 최적화합니까?
두 번째 질문입니다.
float에 대한 컴파일 오류가 발생한 이유
세 번째 질문입니다.
1. L은 길지만 C++입니다. LL을 시도
네. 그것은 효과가 있었다.
그러나 어떤 문자 유형 '+'는 ushort를 표시합니다.
문자열 크기 2바이트로 대체
네. 그것은 효과가 있었다.
그러나 어떤 문자 유형 '+'는 ushort를 표시합니다.
문자열 크기 2바이트로 대체
왜 그래?
이것은 버그입니까, 아니면 기능입니까?
그리고 왜 그렇게?
이것은 버그입니까, 아니면 기능입니까?
예, 누가 압니까?
유니코드 때문일까요?
예, 누가 압니까?
유니코드 때문일까요?