음, 입력에 대한 모든 것이 명확합니다. extern에 대해 - 저처럼 먼저 프로젝트에 포함된 다른 파일에 동일한 유형과 식별자를 가진 변수를 선언할 수 있습니다. 그런 다음에는 그렇게 선언할 수 없습니다. 물론 여기에 3 층 인상주의 ...
extern의 의미는 메인(메인) 파일에 어떤 변수가 있고 이 파일에 다른 파일이 연결되어 있는 경우입니다. 그리고 이 인클루드 파일에서는 메인 파일에 선언된 변수를 사용해야 하고, 인클루드 파일에서는 그것을 extern으로 선언해야 합니다. 그 결과 인클루드 파일을 컴파일할 수 있고, 메인 파일을 컴파일할 때 인클루드 파일 의 변수 선언 은 무시된다.
있다: 1) extern은 mql4에서만 작동합니다. 2) 입력 후 주석은 입력 변수 이름 대신 입력 매개변수에 표시됩니다. 입력 정수 ma_period = 20; - "ma_period"로 작성됩니다. 입력 정수 ma_period = 20; // MA 기간 - "마침표 MA"로 작성됩니다. mql4에서 정확히 이와 같기 위해서는 엄격한 컴파일 모드 #property strict가 필요합니다. extern에는 그러한 "트릭"이 없습니다. 3) extern 변수는 전역 변수 와 마찬가지로 코드에서 변경할 수 있지만 입력할 수 없습니다.
처음에는 mql4와 extern만 있었고 입력이 없었습니다. mql4의 OOP처럼. 그런 다음 mql5를 만들고 mql5 전체가 특히 OOP에 중점을 두었기 때문에 즉시 입력했습니다. 2-3년 전 mql4는 입력을 포함하여 mql5에서 많은 기능을 추가하여 업그레이드되었습니다.
어떤 터미널을 말씀하시는 건가요?
MT5에서 외부 변수가 표시기에서 extern으로 선언되면 표시기는 iCustom()을 통해 호출되지 않을 수 있습니다.
있다: 1) extern은 mql4에서만 작동합니다. 2) 입력 후 주석은 입력 변수 이름 대신 입력 매개변수에 표시됩니다. 입력 정수 ma_period = 20; - "ma_period"로 작성됩니다. 입력 정수 ma_period = 20; // MA 기간 - "마침표 MA"로 작성됩니다. mql4에서 정확히 이와 같기 위해서는 엄격한 컴파일 모드 #property strict가 필요합니다. extern에는 그러한 "트릭"이 없습니다. 3) extern 변수는 전역 변수 와 마찬가지로 코드에서 변경할 수 있지만 입력할 수 없습니다.
처음에는 mql4와 extern만 있었고 입력이 없었습니다. mql4의 OOP처럼. 그런 다음 mql5를 만들고 mql5 전체가 특히 OOP에 중점을 두었기 때문에 즉시 입력했습니다. 2-3년 전 mql4는 입력을 포함하여 mql5에서 많은 기능을 추가하여 업그레이드되었습니다.
extern은 그곳과 그곳에서 모두 일합니다. MQL5와 MQL4 모두에서 입력뿐만 아니라. 그들의 목적은 다르며 이것은 증명서에 기록되어 있습니다.
입력 및 외부 변수의 목적에 대한 잘못된 생각을 즉시 사람에게 지시하는 이유는 무엇입니까?
extern의 의미는 메인(메인) 파일에 어떤 변수가 있고 이 파일에 다른 파일이 연결되어 있는 경우입니다. 그리고 이 인클루드 파일에서는 메인 파일에 선언된 변수를 사용해야 하고, 인클루드 파일에서는 그것을 extern으로 선언해야 합니다. 그 결과 인클루드 파일을 컴파일할 수 있고, 메인 파일을 컴파일할 때 인클루드 파일 의 변수 선언 은 무시된다.
//+------------------------------------------------------------------+//| My function |//+------------------------------------------------------------------+externint koef= 1 ;
int MyCalculator( intvalue , int value2) export
{
return (( value +value2)*koef);
}
//+------------------------------------------------------------------+
스크립트 파일:
#import "tstextern.ex5"int MyCalculator( int value, int value2);
#import
externint koef;
voidOnStart ()
{
koef = 666;
int res = MyCalculator( 100 , 200 );
Print ( "result = " ,res);
}
//+------------------------------------------------------------------+
koef 변수를 사용한 모든 조작은 아무 작업도 수행하지 않으며 여전히 로컬 범위(각 파일 내부)에 있습니다.
Artyom Trishkin :
그들의 목적은 다르며 이것은 증명서에 기록되어 있습니다.
전체 차이점은 액세스 제어에 있습니다.
입력 - 읽기만 가능, 쓰기 금지
extern - 읽고 쓸 수 있으며 MQL 프로그램을 다시 초기화한 후 이 값은 외부 설정에 지정된 값으로 복원됩니다.
음, 입력에 대한 모든 것이 명확합니다. extern에 대해 - 저처럼 먼저 프로젝트에 포함된 다른 파일에 동일한 유형과 식별자를 가진 변수를 선언할 수 있습니다. 그런 다음에는 그렇게 선언할 수 없습니다. 물론 여기에 3 층 인상주의 ...
extern의 의미는 메인(메인) 파일에 어떤 변수가 있고 이 파일에 다른 파일이 연결되어 있는 경우입니다. 그리고 이 인클루드 파일에서는 메인 파일에 선언된 변수를 사용해야 하고, 인클루드 파일에서는 그것을 extern으로 선언해야 합니다. 그 결과 인클루드 파일을 컴파일할 수 있고, 메인 파일을 컴파일할 때 인클루드 파일 의 변수 선언 은 무시된다.
잘 모르겠어. 저에게는 모든 문서가 명확합니다. 어딘가에 어려움이 나타나면 몇 가지 실험 후에 사라집니다.
그러나 어떤 식으로든 비트 연산 에 익숙하지 않다면 최소한 기사를 읽어보십시오. 깃발과 깃발에 관해서는 물론, Artyom이 목소리로 그것이 무엇인지 설명하기 전까지는 아무 것도 이해할 수 없었습니다.
가치를 요구하면 이해가 되지만, 그 전후가 모두 어두움, 가장 캄캄한 어두움
가치 를 요구하면 이해 가 되지만, 그 전후에 모든 것이 어떻게 작동하는지는 어둠, 가장 어두운 어둠입니다.
그녀는 누구인가?
그녀는 누구인가?
작품의 본질
있다:
1) extern은 mql4에서만 작동합니다.
2) 입력 후 주석은 입력 변수 이름 대신 입력 매개변수에 표시됩니다.
입력 정수 ma_period = 20;
- "ma_period"로 작성됩니다.
입력 정수 ma_period = 20; // MA 기간
- "마침표 MA"로 작성됩니다.
mql4에서 정확히 이와 같기 위해서는 엄격한 컴파일 모드 #property strict가 필요합니다.
extern에는 그러한 "트릭"이 없습니다.
3) extern 변수는 전역 변수 와 마찬가지로 코드에서 변경할 수 있지만 입력할 수 없습니다.
처음에는 mql4와 extern만 있었고 입력이 없었습니다. mql4의 OOP처럼.
그런 다음 mql5를 만들고 mql5 전체가 특히 OOP에 중점을 두었기 때문에 즉시 입력했습니다.
2-3년 전 mql4는 입력을 포함하여 mql5에서 많은 기능을 추가하여 업그레이드되었습니다.
어떤 터미널을 말씀하시는 건가요?
MT5에서 외부 변수가 표시기에서 extern으로 선언되면 표시기는 iCustom()을 통해 호출되지 않을 수 있습니다.
무슨 터미널 말씀이세요?
MT5에서 외부 변수가 표시기에서 extern으로 선언되면 표시기 는 iCustom()을 통해 호출되지 않을 수 있습니다 .
나는 지금 책망이 없지만 "잘 안될 수도 있습니다"라고 쓰고 있습니다 ... 그것이 잘되지 않을 수도 있지만 잘 될 수도 있습니다! 독학으로 특수교육을 받지 못한 나로서는 그런 불확실성을 이해하기 어렵다는 사실에 대한 이야기다...
있다:
1) extern은 mql4에서만 작동합니다.
2) 입력 후 주석은 입력 변수 이름 대신 입력 매개변수에 표시됩니다.
입력 정수 ma_period = 20;
- "ma_period"로 작성됩니다.
입력 정수 ma_period = 20; // MA 기간
- "마침표 MA"로 작성됩니다.
mql4에서 정확히 이와 같기 위해서는 엄격한 컴파일 모드 #property strict가 필요합니다.
extern에는 그러한 "트릭"이 없습니다.
3) extern 변수는 전역 변수 와 마찬가지로 코드에서 변경할 수 있지만 입력할 수 없습니다.
처음에는 mql4와 extern만 있었고 입력이 없었습니다. mql4의 OOP처럼.
그런 다음 mql5를 만들고 mql5 전체가 특히 OOP에 중점을 두었기 때문에 즉시 입력했습니다.
2-3년 전 mql4는 입력을 포함하여 mql5에서 많은 기능을 추가하여 업그레이드되었습니다.
extern은 그곳과 그곳에서 모두 일합니다. MQL5와 MQL4 모두에서 입력뿐만 아니라. 그들의 목적은 다르며 이것은 증명서에 기록되어 있습니다.
입력 및 외부 변수의 목적에 대한 잘못된 생각을 즉시 사람에게 지시하는 이유는 무엇입니까?
extern의 의미는 메인(메인) 파일에 어떤 변수가 있고 이 파일에 다른 파일이 연결되어 있는 경우입니다. 그리고 이 인클루드 파일에서는 메인 파일에 선언된 변수를 사용해야 하고, 인클루드 파일에서는 그것을 extern으로 선언해야 합니다. 그 결과 인클루드 파일을 컴파일할 수 있고, 메인 파일을 컴파일할 때 인클루드 파일 의 변수 선언 은 무시된다.
나는 또한 이 수정자가 C ++에서처럼 작동한다고 생각했습니다. 포함된 파일에 선언됨 https://www.mql5.com/ru/forum/160683/page867#comment_11927748
C++에서 작동해야 하므로 작동하지 않는지 확인했습니다.
tstexttern 라이브러리 파일
스크립트 파일:
koef 변수를 사용한 모든 조작은 아무 작업도 수행하지 않으며 여전히 로컬 범위(각 파일 내부)에 있습니다.
그들의 목적은 다르며 이것은 증명서에 기록되어 있습니다.
전체 차이점은 액세스 제어에 있습니다.
입력 - 읽기만 가능, 쓰기 금지
extern - 읽고 쓸 수 있으며 MQL 프로그램을 다시 초기화한 후 이 값은 외부 설정에 지정된 값으로 복원됩니다.
나는 지금 책망이 없지만 "잘 안될 수도 있습니다"라고 쓰고 있습니다 ... 그것이 잘되지 않을 수도 있지만 잘 될 수도 있습니다! 독학으로 특수교육을 받지 못한 나로서는 그런 불확실성을 이해하기 어렵다는 사실에 대한 이야기다...
지금은 확인하지 않았다는 의미에서. 그리고 한 번 있었던 것에 대해 모든 것이 종종 변하기 때문에 여기서 말하는 것은 위험합니다. 아마도 일시적인 오류였을 것입니다.
나는 또한 이 수정자가 C ++에서처럼 작동한다고 생각했습니다. 포함된 파일에 선언됨 https://www.mql5.com/en/forum/160683/page867#comment_11927748
C++에서 작동해야 하므로 작동하지 않는지 확인했습니다.
tstexttern 라이브러리 파일
스크립트 파일:
koef 변수를 사용한 모든 조작은 아무 작업도 수행하지 않으며 여전히 로컬 범위(각 파일 내부)에 있습니다.
네, 도서관이 있습니다. 물론 다양한 변수가 있을 것이다. include를 통해 mqh를 연결하는 것을 의미합니다.