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

 

컴파일러가 int와 color의 차이를 인식하지 못하는 이유는 무엇입니까?

   void               CreateLabel( int x, int y, color COLOR);   
   void               CreateLabel( int x, int y, int n);

나는 기능을 재정의하고 맹세한다(그는 내가 페달을 혼동한다고 조심스럽게 말한다).

'CreateLabel' - ambiguous call to overloaded function with the same parameters
기본 매개변수가 있으면 좋을 것입니다. 그렇지 않으면 모호함이 없고 전달된 매개변수의 유형을 결정하고 계속 진행하십시오.
 
Urain :

컴파일러가 int와 color의 차이를 인식하지 못하는 이유는 무엇입니까?

나는 기능을 재정의하고 맹세한다(그는 내가 페달을 혼동한다고 조심스럽게 말한다).

기본 매개변수가 있으면 좋을 것이고, 그렇지 않으면 모호함이 없고 전달된 매개변수의 유형을 결정하고 계속 진행하십시오.
이 경우 컴파일러는 동일한 이름을 가진 두 개의 함수를 생성했으며 전달된 매개변수는 아무 관련이 없다고 맹세합니다.
 
sergey1294 :
이 경우 컴파일러는 동일한 이름을 가진 두 개의 함수를 생성했으며 전달된 매개변수는 아무 관련이 없다고 맹세합니다.

이 경우 "과부하"라는 단어의 의미를 읽으십시오.

ZY와 동시에 " 기능 과부하 ".

Документация по MQL5: Основы языка / Функции / Перегрузка функций
Документация по MQL5: Основы языка / Функции / Перегрузка функций
  • www.mql5.com
Основы языка / Функции / Перегрузка функций - Документация по MQL5
 
Urain :

글쓰기 동문회에 대한 질문, 실수, 버그가 아니라 누가 무엇을 제공할 것인지에 대한 질문 ...

클래스 내부의 포인터 이름을 얻고 싶지만 어떻게 든 고정되지 않습니다.

사실, 요점은 문자열 이름이 그래픽 개체에 자동으로 할당 되기를 원한다는 것입니다.

그리고 그것은 포인터가 여전히 문자열 이름을 등록하도록 하는 것으로 밝혀졌습니다. 일반적으로 그것은 편리하지 않습니다.

클래스 메서드에서 그래프 객체를 설정할 때 포인터에 따라 자동으로 이름을 부여해야 합니까?

아직 어떻게 해야할지 모르겠어, 우리가 세상과 함께 갉아먹을 것 같아.


이론적으로 객체에 이름을 자동으로 할당하는 두 가지 주요 방법이 있습니다(구현 시 테마에 다양한 변형 포함).

1. 이름의 구성은 번호 매기기를 기반으로 합니다.

별도의 클래스는 개체에 이름을 할당하는 책임이 있으며 "열거자"(모든 개체 또는 개별 개체 그룹에 대한 것일 수 있음)도 유지 관리합니다.

아이디어에 따르면 이 경우 이름은 (바람직하게는) 객체 유형, 기호 이름(쌍의 통화), TF의 텍스트 지정 및 일련 번호를 기반으로 형성됩니다. 개체 (열거자에서 가져옴).

동시에 구현에 따라 차트에서 개체의 존재를 추적할 수 있거나 추적할 수 없습니다.

2. 이름은 객체가 생성된 날짜와 시간을 기준으로 구성됩니다.

이 접근 방식에서 이름은 객체 유형, 기호 이름, TF 텍스트 지정 및 (날짜 및 시간을 기반으로 구성됨)를 기반으로 구성할 수 있습니다.

추신

첫 번째 옵션(내 의견으로는)에서는 객체 관리(생성, 수정 및 삭제)의 전체 주기를 클래스에서 구현하는 것이 더 현명할 것입니다...

 
Urain :

이 경우 "과부하"라는 단어의 의미를 읽으십시오.

ZY와 동시에 " 기능 과부하 ".

그것이 가능한지 몰랐습니다.
 
sergey1294 :
그것이 가능한지 몰랐습니다.

다형성과 함수 오버로딩은 OOP의 기본이며 모든 자기 존중 언어에 있어야 합니다.

다형성

다형성은 이 메소드를 호출할 때 어떤 클래스 객체를 사용하느냐에 따라 같은 이름의 함수(메소드)가 다른 프로그램 코드(다형성 코드)에 대응하는 현상이다. 메서드 시그니처 를 의무적으로 유지하면서 자손 클래스에서 조상 클래스의 메서드 구현을 변경함으로써 다형성이 보장됩니다. 이렇게 하면 조상 클래스의 인터페이스 가 변경되지 않고 코드의 메서드 이름을 다른 클래스로 바인딩할 수 있습니다. 호출이 이루어진 클래스의 개체에서, 해당 클래스에서 지정된 이름의 메서드가 사용됩니다. . 이 메커니즘은 컴파일 시간에 발생하는 정적(초기) 바인딩과 달리 동적(또는 후기) 바인딩이라고 합니다.

함수 오버로딩

프로시저 및 함수의 오버로딩 - 같은 이름의 서브루틴을 사용하는 기능: 프로그래밍 언어의 프로시저 또는 함수.


표준 거래 클래스 라이브러리 클래스의 예 계정 정보 :

 double MarginCheck( const string symbol, ENUM_POSITION_TYPE trade_operation, double volume) const ;
double MarginCheck( const string symbol, ENUM_ORDER_TYPE trade_operation, double volume) const ;
 
ddd06 :

오랫동안 저는 존경받는 MetaQuotes와 이야기를 나누었고 그들에게 결함이 있다는 것을 증명했고 그들은 결함이 없다고 말했습니다.

그러나 나는 내 자신을 유지했고 그들은 나에게 커뮤니티에 물어보라고 조언했습니다.

그래서 칠면조와 칠면조의 가치를 취하는 고문이 있습니다.

EURUSD 테스터를 2010년 7월 1일부터 2010년 2월 7일까지 M1 기간 동안 출시합니다.

우리는 로그를 보고 한 버퍼의 값이 변경되고 있지만 다른 버퍼는 변경되지 않는 것을 확인합니다.

이게 1시간 동안 계속되다가 2차 버퍼가 살아나는데 칠면조 값을 보면 어울리지 않는다.

계정을 변경하고 기록을 다운로드하려고 시도했지만 도움이되지 않았습니다.

여기 rar 90mb http://dl.dropbox.com/u/6290215/MetaTrader%205%201111.rar 내 터미널에 대한 링크가 있습니다. 모든 것이 거기에 설정되어 있습니다.

음, 첨부 파일에 고문이있는 표시기

오류가 있는 코드를 제출했습니다. 당연히 이 코드는 잘못된 정보를 생성합니다. 동시에, 당신은 오류 수정에 대한 우리의 의견을 무시했습니다. 매번 새로운 코드를 제공하고 오류가 발생할 때마다.
 
Urain :

컴파일러가 int와 color의 차이를 인식하지 못하는 이유는 무엇입니까?

나는 기능을 재정의하고 맹세한다(그는 내가 페달을 혼동한다고 조심스럽게 말한다).

기본 매개변수가 있으면 좋을 것입니다. 그렇지 않으면 모호함이 없고 전달된 매개변수의 유형을 결정하고 계속 진행하십시오.
실제로 문제가 있습니다. 우리는 이해할 것입니다.
 
소변, 게시물에 대한 감사합니다. 버그가 수정되었습니다.
 
stringo :
오류가 있는 코드를 제출했습니다. 당연히 이 코드는 잘못된 정보를 생성합니다. 동시에, 당신은 오류 수정에 대한 우리의 의견을 무시했습니다. 매번 새로운 코드를 제공하고 오류가 발생할 때마다.

그러나 동기화가 없어야하며 코드에 내장되어야한다고 말하면 ...

대신 당신은 모든 것이 똑같다고 주장했습니다.

TimeToString (시간[0],TIME_DATE|TIME_MINUTES),"buf1-",buf1[1],"buf2-",buf2[1]); 대신 TimeToString(time[1],TIME_DATE|TIME_MINUTES),"buf1-",buf1[1],"buf2-",buf2[1]);

이것은 물론 실수이지만 본질에는 영향을 미치지 않았습니다.

지금 당장 칠면조를 끝내고 내가 얼마나 틀렸는지 확인하겠습니다.

즉, 모든 것이 일치한다고 하고 어드바이저 코드를 수정했습니다. 그러나 실제로 일치하는 항목이 없으며 터키 코드를 편집해야 합니다(동기화 빌드).