오류, 버그, 질문 - 페이지 1500

 
coderex :

차트로 작업하기 전에 Attach !!!를 사용하여 클래스 개체에 차트를 첨부해야 합니다. 현재 차트( 0 )로 작업하지 않으려면 이 확인을 구현하고 작업에서 현재 차트의 사용을 금지합니다.

그리고 차트로 작업하고 Detach 메서드로 차트를 닫지 않고 종료한다는 것은 무엇을 의미합니까? 클래스의 소멸자나 OnDeinit에 한 줄을 작성하는 것이 정말 어렵습니까? 개체에 대한 작업은 엄격하게 제어되어야 하며, 그러면 실수를 피할 수 있습니다.

같은 조언을 드릴 수 있습니다. 차트로 작업하기 전에 Attach() 메서드를 사용하여 클래스 객체 에 차트를 첨부해야 합니다. 현재 차트로 작업하려면 Attach( void ) 메서드를 사용하십시오. 이전에 차트 ID를 얻은 경우 Attach( chart ) 메서드를 사용합니다. 그리고 새 차트로 작업하려면 Open() 메서드를 사용하십시오. 그리고 이 방법을 독점적으로 사용하여 새 차트를 연 다음 작업하십시오.

차트를 닫지 않고 작업한다는 것은 Detach() 메서드를 호출하는 것을 잊는 것을 의미합니다. 시작 오류와 함께 결과는 다른 사람의 차트를 닫는 것입니다. 안좋다!

여기 당신은 흥미로운 글을 씁니다. 마음에 안드는 게 있으면 거기에 체크하고 거기에 추가하고 예전처럼 살자. 나는 당신처럼 나만의 라이브러리를 작성할 수 있다고 생각합니다. 그리고 그 일이 이미 우리를 위해 끝났다면 왜 그럴까요? 목발을 발명하지 말고 우리가 가진 것을 개선합시다. 개발자들이 빠르게 제 말을 듣고 필요한 변경을 해주셔서 좋았습니다.

 

이해하지 못하겠지만 현재 차트로 작업할 수 있는 기능을 제거하도록 개발자에게 요청하고 있습니다. 개체 생성, 작업 및 삭제 프로세스를 올바르게 제어하지 않으려면 개발자가 제안한 대로 Open 메서드를 직접 오버로드하십시오.

사실, 클래스의 객체를 생성할 때 모든 필드는 0으로 초기화됩니다. 이것은 생성 후 모든 것이 0으로 강제되어야 하는 순수한 C++가 아닙니다.

그리고 클래스 개체를 만들고 작업한 후 클래스 개체에서 차트를 풀지 않고 삭제를 위해 개체를 던지면 됩니다. 그리고 개발자들은 이제 Open 메서드를 변경할 것이며, 그 때 왜 오버로드된 Attach 메서드가 생성되었는지에 대한 의문이 생깁니다.

개발자 여러분, 이러한 변경을 수행하기 전에 표준 라이브러리 작업에 대한 자신의 이념을 깨는 것에 대해 생각해 보십시오.

 
coderex :

이해하지 못하겠지만 현재 차트로 작업할 수 있는 기능을 제거하도록 개발자에게 요청하고 있습니다. 개체 생성, 작업 및 삭제 프로세스를 올바르게 제어하지 않으려면 개발자가 제안한 대로 Open 메서드를 직접 오버로드하십시오.

사실, 클래스의 객체를 생성하면 모든 필드가 0으로 초기화됩니다. 이것은 생성 후 모든 것이 강제로 0이 되어야 하는 순수한 C++가 아닙니다.

그리고 클래스 개체를 만들고 작업한 후 클래스 개체에서 차트를 풀지 않고 삭제를 위해 개체를 던지면 됩니다. 그리고 개발자들은 이제 Open 메서드를 변경할 것이며, 그 때 왜 오버로드된 Attach 메서드가 생성되었는지에 대한 의문이 생깁니다.

개발자 여러분, 이러한 변경을 수행하기 전에 표준 라이브러리 작업에 대한 자신의 이념을 깨는 것에 대해 생각해 보십시오.

예를 들어 이야기해 봅시다. 근거 없는 비난이 짜증나기 시작합니다. 내 생각에는 근본적으로 잘못된 접근 방식이 옳다는 생각은 어디서 얻었습니까?

그리고 클래스 개체를 만들고 작업한 후 클래스 개체에서 차트를 풀지 않고 삭제를 위해 개체를 던지면 됩니다. 그리고 개발자들은 이제 Open 메서드를 변경할 것이며, 그 때 왜 오버로드된 Attach 메서드가 생성되었는지에 대한 의문이 생깁니다.

Detach() 메서드에 대해서는 별도의 대화입니다. 이제 우리는 Open()이 현재 차트에 작업을 암시적으로 부과할 수 있다는 것을 논의하고 있습니다! 이를 위한 Attach() 메서드가 있습니다. Open() 메서드를 조정할 때 누가, 무엇을 죽일지 명확하지 않습니다...
 
Slawa :

어떻게 GMT를 변경할 수 있습니까? "기념비다!" (c) GMT는 그리니치 표준시입니다.

하하하...

당신은 정말 재치 있습니다.

 
Alexey Kozitsyn :

예를 들어 이야기해 봅시다. 근거 없는 비난이 짜증나기 시작합니다. 내 생각에는 근본적으로 잘못된 접근 방식이 옳다는 생각은 어디서 얻었습니까?

Detach() 메서드에 대해서는 별도의 대화입니다. 이제 우리는 Open()이 현재 차트에 작업을 암시적으로 부과할 수 있다는 것을 논의하고 있습니다! 이를 위한 Attach() 메서드가 있습니다. Open() 메서드를 조정할 때 누가, 무엇을 죽일지 명확하지 않습니다...

어떻게 할지 생각해 보십시오. 그러나 제안된 Open 메서드 업데이트의 다음 코드 줄은 다음과 같습니다.

   if (m_chart_id== 0 )
      m_chart_id=- 1 ;

차트가 최신인 경우 차트 ID를 포함하는 m_chart_id 필드를 -1로 변경합니다. ( 0 ), 근거 없는 비난이 있을 수 있고 아무도 당신을 비난하지 않고, 당신은 무언가를 혼란스럽게 만들었습니다. 표준 라이브러리 의 이념에 따라 작성하고 싶지 않다면 원하는 방식으로 작동하지 않는다고 생각되는 메소드를 오버로드하십시오. 클래스가 예를 들어 컨트롤 패널 클래스 패밀리와 같은 공통 메커니즘의 일부 스레드에 통합되었는지 이해합니다. 여기서 일부 메소드는 클래스의 개인 섹션에 포함된 필드로 인해 오버로드될 수 없습니다. 그러나 여기에서는 클래스가 간단하므로 해당 동작을 직접 변경할 수 있습니다. 그러나 개발자가 위와 같이 Open 메서드를 변경하면 Attach() 메서드에 첨부된 현재( 0 ) 차트이기 때문에 그 이유가 명확하지 않습니다. 저것들. Open에 대한 후속 호출에서 우리는 m_chart_id == -1 을 얻을 것입니다. 여기에서는 예제 없이 모든 것이 명확하다고 생각합니다.

사실, 이것은 나에게 문제를 일으키지 않을 것입니다. 현재 차트의 ID를 수신하는 라인을 OnInit에 추가하고 Attach(긴 차트) 메소드를 사용하여 차트를 클래스 객체에 첨부할 것입니다. 그러나 일부 개발자는 이 스레드는 오해와 "놀람"이 있을 수 있습니다.

 
ex4 파일에서 변수를 복사하는 방법이 있습니까?
 
Vasyl Nosal :
ex4 파일에서 변수를 복사하는 방법이 있습니까?
설정 파일 저장 - 나는 항상 이것을
 
Vladislav Andruschenko :
설정 파일 저장 - 나는 항상 이것을

:))

금지되어 있습니다.

mq4 파일에서 할 수 있습니다.

(지시자)

 
Vasyl Nosal :

:))

금지되어 있습니다.

mq4 파일에서 할 수 있습니다.

(지시자)

주형? 데이터 유형이 없습니다.

 
그런 다음 템플릿 만