MQL5의 OOP에 대한 질문 - 페이지 74 1...676869707172737475767778798081...96 새 코멘트 Igor Makanu 2020.06.09 18:38 #731 Vladimir Simakov : 예, 여기에는 포인터가 없습니다.) 클래스에 대한 핸들이 있지만 이를 사용하는 작업은 포인터로 작업하는 것과 유사하지만 공통된 모든 것이 끝나는 곳입니다. 2박 2일 동안 호기심 많은 마음과 장난스런 손이 날 괴롭혔어 범위 외부에서 동적으로 생성된 개체를 삭제하려고 했습니다. 함수에서 다음을 입력하여 여전히 솔루션에 도달했습니다. class CTest { public : ~CTest() { Print ( __FUNCTION__ ); } }; //+------------------------------------------------------------------+ void OnStart () { CTest* _test = new CTest; deleteCTest(_test); } //+------------------------------------------------------------------+ void deleteCTest(CTest* &t) { delete t; } 그런 식으로 삭제하지만 즉시 추측합니다 .... 도움말이나 안보리에서 포인터를 전달하는 유사한 기능 서명을 찾지 못했습니다. 다른 질문: 그러나 함수 실행의 결과로 참조로 개체에 대한 포인터를 반환하는 방법은 무엇입니까? 저것들. 다음과 같이 하고 싶습니다. CTest ret_CTest() { CTest *result = new CTest; return (result); } 문제 없이 CTest *를 반환할 수 있지만 ret_CTest()를 작성한 것처럼 오류가 발생합니다. Aleksey Mavrin 2020.06.09 18:44 #732 Igor Makanu : 2박 2일 동안 호기심 많은 마음과 장난스런 손이 날 괴롭혔어 범위 외부에서 동적으로 생성된 개체를 삭제하려고 했습니다. 함수에서 다음을 입력하여 여전히 솔루션에 도달했습니다. 그런 식으로 삭제하지만 즉시 추측합니다 .... 도움말이나 안보리에서 포인터를 전달하는 유사한 기능 서명을 찾지 못했습니다. out of scope은 무슨 뜻인가요? 함수에 전달했으므로 거기에서 볼 수 있습니다) 추신 이것이 없으면 void deleteCTest(CTest* & t) & 동일하게 작동해야 합니까? 생성된 영역 외부에서 실제로 삭제하고 심지어 자동으로 삭제하려면 다음이 필요합니다. ... 쉿 ... 아무도 듣지 않는 동안 ... 패턴 팩토리 ... 더 빠르게 읽고 삭제 ... Vladimir Simakov 2020.06.09 18:59 #733 Igor Makanu : 그러나 함수 실행의 결과로 참조로 개체에 대한 포인터를 반환하는 방법은 무엇입니까? 문제 없이 CTest *를 반환할 수 있지만 ret_CTest()를 작성한 것처럼 오류가 발생합니다. 코셔를 원하신다면 CTest& Foo(); , 아직 운명은 아니지만 그렇다면: CTest Foo(); , 클래스에 복사 생성자가 있어야 합니다. CTest(CTest &other)... Igor Makanu 2020.06.09 19:01 #734 Aleksey Mavrin : 추신 이것이 없으면 void deleteCTest(CTest* & t) & 동일하게 작동해야 합니까? 많은 것을 배우게 될 것입니다. 나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.))) 블라디미르 시마코프 : 코셔를 원한다면 아직 운명은 아니지만 그렇다면: , 클래스에 복사 생성자가 있어야 합니다. 다시 생각해야 한다 GetPointer() 를 사용하여 일종의 트릭을 수행할 수 있다는 의혹이 있습니다. 하지만 사실은 그렇지 않습니다. 여기에서 "공간과 시간을 뛰어 넘는 것"입니다. 포인터와 MQL의 암시적 역참조를 통해 - 이것은 세뇌입니다! !! ((( Vladimir Simakov 2020.06.09 19:05 #735 Igor Makanu : 많은 것을 배우게 될 것입니다. 나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.))) 삭제하지만 이 방법으로 _test의 새 값을 할당할 수 없습니다. MQL은 그건 그렇고)))) Vladimir Simakov 2020.06.09 19:06 #736 Igor Makanu : 많은 것을 배우게 될 것입니다. 나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.))) 다시 생각해야 한다 GetPointer()를 사용하여 일종의 트릭을 수행할 수 있다는 의혹이 있습니다. 하지만 사실은 그렇지 않습니다. 여기에서 "공간과 시간을 뛰어 넘는 것"입니다. 포인터와 MQL의 암시적 역참조를 통해 - 이것은 세뇌입니다! !! ((( 예, 여기에서 모든 것이 좋습니다.))) 샤프를 끄십시오. 힌트조차 없습니다.))) Aleksey Mavrin 2020.06.09 19:13 #737 Igor Makanu : 많은 것을 배우게 될 것입니다. 나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.))) 글쎄, 나는 확인했다. & 없이 완벽하게 삭제됨 ;) 그리고 프린트가 안 나온다는 사실을 MT4와 MT5에서 해보고 비교) class CTest { public : CTest() { Print ( __FUNCTION__ ); } ~CTest() { Print ( __FUNCTION__ ); } }; //+------------------------------------------------------------------+ void OnStart () { CTest* _test = new CTest(); deleteCTest(_test); } //+------------------------------------------------------------------+ void deleteCTest(CTest* t) { delete t; } Igor Makanu 2020.06.09 19:20 #738 Aleksey Mavrin : 글쎄, 나는 확인했다. & 없이 완벽하게 삭제됨 ;) 그리고 프린트가 안 나온다는 사실을 MT4와 MT5에서 해보고 비교) 완전한 예를 제공하지 않았지만 오늘 나는 이것은 & 없이는 작동하지 않습니다 class CTest { public : ~CTest() { Print ( __FUNCTION__ ); } }; //+------------------------------------------------------------------+ void OnStart () { CTest* _test = new CTest; deleteCTest(_test); delete _test; } //+------------------------------------------------------------------+ void deleteCTest(CTest* & t) { delete t; t = new CTest; } //+------------------------------------------------------------------+ 블라디미르 시마코프 : 예, 여기에서 모든 것이 좋습니다.))) 샤프를 끄십시오. 힌트조차 없습니다.))) 예, 저는 Sharp를 찾고 있는 것이 아닙니다. MQL로 여전히 이해하고 있습니다. 이해가 되지 않습니다. Vladimir Simakov 2020.06.09 19:33 #739 Igor Makanu : 완전한 예를 제공하지 않았지만 오늘 나는 따라서 & 없이는 작동하지 않습니다 당연히. 포인터를 값으로 전달하므로 포인터의 복사본이 생성됩니다. 그것을 통해 당신은 객체를 죽일 것이고, 당신은 함수에서 생성되는 포인터를 위한 새로운 객체를 생성할 것입니다. 이것은 C++입니다, 환영합니다 Aleksey Mavrin 2020.06.09 19:43 #740 Igor Makanu : 완전한 예를 제공하지 않았지만 오늘 나는 이것은 & 없이는 작동하지 않습니다 내 생각에 이것은 링크와 관련이 없지만 함수가 작동한 후 함수 인수 가 값을 유지하려면 포인터로 전달해야 한다는 사실에만 관련이 있습니다. 예를 들어 링크가 아닌 파일이나 표시기의 핸들에서도 마찬가지입니다. 그리고 오래전부터 어렴풋이 기억이 나는데도 C++는 항상 이랬던 것 같습니다. 1...676869707172737475767778798081...96 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
예, 여기에는 포인터가 없습니다.) 클래스에 대한 핸들이 있지만 이를 사용하는 작업은 포인터로 작업하는 것과 유사하지만 공통된 모든 것이 끝나는 곳입니다.
2박 2일 동안 호기심 많은 마음과 장난스런 손이 날 괴롭혔어
범위 외부에서 동적으로 생성된 개체를 삭제하려고 했습니다. 함수에서 다음을 입력하여 여전히 솔루션에 도달했습니다.
그런 식으로 삭제하지만 즉시 추측합니다 .... 도움말이나 안보리에서 포인터를 전달하는 유사한 기능 서명을 찾지 못했습니다.
다른 질문:
그러나 함수 실행의 결과로 참조로 개체에 대한 포인터를 반환하는 방법은 무엇입니까?
저것들. 다음과 같이 하고 싶습니다.
문제 없이 CTest *를 반환할 수 있지만 ret_CTest()를 작성한 것처럼 오류가 발생합니다.
2박 2일 동안 호기심 많은 마음과 장난스런 손이 날 괴롭혔어
범위 외부에서 동적으로 생성된 개체를 삭제하려고 했습니다. 함수에서 다음을 입력하여 여전히 솔루션에 도달했습니다.
그런 식으로 삭제하지만 즉시 추측합니다 .... 도움말이나 안보리에서 포인터를 전달하는 유사한 기능 서명을 찾지 못했습니다.
out of scope은 무슨 뜻인가요? 함수에 전달했으므로 거기에서 볼 수 있습니다)
추신 이것이 없으면 void deleteCTest(CTest* & t) & 동일하게 작동해야 합니까?
생성된 영역 외부에서 실제로 삭제하고 심지어 자동으로 삭제하려면 다음이 필요합니다. ... 쉿 ... 아무도 듣지 않는 동안 ... 패턴 팩토리 ... 더 빠르게 읽고 삭제 ...
Igor Makanu :
그러나 함수 실행의 결과로 참조로 개체에 대한 포인터를 반환하는 방법은 무엇입니까?
문제 없이 CTest *를 반환할 수 있지만 ret_CTest()를 작성한 것처럼 오류가 발생합니다., 클래스에 복사 생성자가 있어야 합니다.
추신 이것이 없으면 void deleteCTest(CTest* & t) & 동일하게 작동해야 합니까?
많은 것을 배우게 될 것입니다.
나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.)))
코셔를 원한다면 아직 운명은 아니지만 그렇다면:
, 클래스에 복사 생성자가 있어야 합니다.
다시 생각해야 한다
GetPointer() 를 사용하여 일종의 트릭을 수행할 수 있다는 의혹이 있습니다. 하지만 사실은 그렇지 않습니다. 여기에서 "공간과 시간을 뛰어 넘는 것"입니다. 포인터와 MQL의 암시적 역참조를 통해 - 이것은 세뇌입니다! !! (((
많은 것을 배우게 될 것입니다.
나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.)))
삭제하지만 이 방법으로 _test의 새 값을 할당할 수 없습니다. MQL은 그건 그렇고))))
많은 것을 배우게 될 것입니다.
나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.)))
다시 생각해야 한다
GetPointer()를 사용하여 일종의 트릭을 수행할 수 있다는 의혹이 있습니다. 하지만 사실은 그렇지 않습니다. 여기에서 "공간과 시간을 뛰어 넘는 것"입니다. 포인터와 MQL의 암시적 역참조를 통해 - 이것은 세뇌입니다! !! (((
예, 여기에서 모든 것이 좋습니다.))) 샤프를 끄십시오. 힌트조차 없습니다.)))
많은 것을 배우게 될 것입니다.
나는 MQL의 포인터가 매우 유익한 것이라고 다시 씁니다.)))
글쎄, 나는 확인했다. & 없이 완벽하게 삭제됨 ;)
그리고 프린트가 안 나온다는 사실을 MT4와 MT5에서 해보고 비교)
글쎄, 나는 확인했다. & 없이 완벽하게 삭제됨 ;)
그리고 프린트가 안 나온다는 사실을 MT4와 MT5에서 해보고 비교)
완전한 예를 제공하지 않았지만 오늘 나는
이것은 & 없이는 작동하지 않습니다
예, 여기에서 모든 것이 좋습니다.))) 샤프를 끄십시오. 힌트조차 없습니다.)))
예, 저는 Sharp를 찾고 있는 것이 아닙니다. MQL로 여전히 이해하고 있습니다. 이해가 되지 않습니다.
완전한 예를 제공하지 않았지만 오늘 나는
따라서 & 없이는 작동하지 않습니다
완전한 예를 제공하지 않았지만 오늘 나는
이것은 & 없이는 작동하지 않습니다
내 생각에 이것은 링크와 관련이 없지만 함수가 작동한 후 함수 인수 가 값을 유지하려면 포인터로 전달해야 한다는 사실에만 관련이 있습니다. 예를 들어 링크가 아닌 파일이나 표시기의 핸들에서도 마찬가지입니다.
그리고 오래전부터 어렴풋이 기억이 나는데도 C++는 항상 이랬던 것 같습니다.