결론을 내리도록 노력하겠습니다. 스크립트에서는 OnStart() 함수 내에서 배열을 선언하는 것이 맞습니다. 배열이 선언된 후에는 ArrayResize() 함수에 의해 결정되어야 합니다. 그렇지 않으면 컴파일러가 맹세합니다. 내 결론이 맞습니까? 그렇지 않다면 정확한 해석을 알려주세요.
DiPach , 도움을 주셔서 다시 한 번 감사드립니다. 귀하의 사례를 분석했습니다. 시작 코드를 변경했습니다. 그것은 다음과 같이 밝혀졌습니다.
변경된 사항:
1. 배열 int awd1[]; OnStart() 함수 내부
2. ArrayResize(awd1,6,7) 함수를 추가했습니다.
3. 대본이 적립되었습니다.
결론을 내리도록 노력하겠습니다. 스크립트에서는 OnStart() 함수 내에서 배열을 선언하는 것이 맞습니다. 배열이 선언된 후에는 ArrayResize() 함수에 의해 결정되어야 합니다. 그렇지 않으면 컴파일러가 맹세합니다. 내 결론이 맞습니까? 그렇지 않다면 정확한 해석을 알려주세요.
일반적으로 그렇습니다. 그리고 그는 적어도 조용히, 그러나 구체적으로 맹세할 것입니다. :)
다음 사항을 명확히 하겠습니다.
1. 일반 변수와 배열을 선언할 때 이 스크립트(또는 조언자/지시자)가 수행할 작업과 이러한 변수/배열의 용도부터 진행해야 한다고 생각합니다.
당신이 첨부한 스크립트의 체계는 프로그램의 전역 수준이 아니라 지역적으로 변수 선언을 허용한다고 생각합니다. 즉, 배열 선언은 한 번만 발생합니다. 그리고 우리가 말하는 코드의 Start() 본문에는 불필요한 반복(반복) 선언이 없습니다. 예를 들어 for() 루프가 시작 되기 전 섹션에서 for() {}를 종료 한 후 섹션에서 일부 변수를 추가로 선언합니다.
따라서 배열이 프로그램의 전역 변수 수준이 아니라 OnStart()의 본문에서 for() 루프 연산자 이전 에 한 번 선언된다는 사실은 이러한 방식에서 충분히 수용 가능합니다. 프로그램.
제 입장에서는 전역 프로그램 변수 수준에서 선언할 필요가 없다면 이 기회를 이용하여 로컬에서 가능한 것을 선언하는 것이 좋습니다.
DiPach , 다시 한 번 도움을 주셔서 감사합니다. 귀하의 사례를 분석했습니다. 시작 코드를 변경했습니다. 그것은 다음과 같이 밝혀졌습니다.
변경된 사항:
1. 배열 int awd1[]; OnStart() 함수 내부
2. ArrayResize(awd1,6,7) 기능 추가
3. 대본이 적립되었습니다.
결론을 내리도록 노력하겠습니다. 스크립트에서는 OnStart() 함수 내에서 배열을 선언하는 것이 맞습니다. 배열이 선언된 후에는 ArrayResize() 함수에 의해 결정되어야 합니다. 그렇지 않으면 컴파일러가 맹세합니다. 내 결론이 맞습니까? 그렇지 않다면 정확한 해석을 알려주세요.
DiPach , 도움을 주셔서 다시 한 번 감사드립니다. 귀하의 사례를 분석했습니다. 시작 코드를 변경했습니다. 그것은 다음과 같이 밝혀졌습니다.
변경된 사항:
1. 배열 int awd1[]; OnStart() 함수 내부
2. ArrayResize(awd1,6,7) 함수를 추가했습니다.
3. 대본이 적립되었습니다.
결론을 내리도록 노력하겠습니다. 스크립트에서는 OnStart() 함수 내에서 배열을 선언하는 것이 맞습니다. 배열이 선언된 후에는 ArrayResize() 함수에 의해 결정되어야 합니다. 그렇지 않으면 컴파일러가 맹세합니다. 내 결론이 맞습니까? 그렇지 않다면 정확한 해석을 알려주세요.
일반적으로 그렇습니다. 그리고 그는 적어도 조용히, 그러나 구체적으로 맹세할 것입니다. :)
다음 사항을 명확히 하겠습니다.
1. 일반 변수와 배열을 선언할 때 이 스크립트(또는 조언자/지시자)가 수행할 작업과 이러한 변수/배열의 용도부터 진행해야 한다고 생각합니다.
당신이 첨부한 스크립트의 체계는 프로그램의 전역 수준이 아니라 지역적으로 변수 선언을 허용한다고 생각합니다. 즉, 배열 선언은 한 번만 발생합니다. 그리고 우리가 말하는 코드의 Start() 본문에는 불필요한 반복(반복) 선언이 없습니다. 예를 들어 for() 루프가 시작 되기 전 섹션에서 for() {}를 종료 한 후 섹션에서 일부 변수를 추가로 선언합니다.
따라서 배열이 프로그램의 전역 변수 수준이 아니라 OnStart()의 본문에서 for() 루프 연산자 이전 에 한 번 선언된다는 사실은 이러한 방식에서 충분히 수용 가능합니다. 프로그램.
제 입장에서는 전역 프로그램 변수 수준에서 선언할 필요가 없다면 이 기회를 이용하여 로컬에서 가능한 것을 선언하는 것이 좋습니다.
2. 코드에 따라 다음을 명확히 하겠습니다.
내 말은:
이 경우 5는 다음에 적합합니다.
P./S.: ArrayResize() 의 사용이 동적 배열에 대한 경우를 대비하여 한 가지 더 설명합니다. 이 함수에 대한 문서에는 이 함수 로 동적 배열의 크기를 조정할 수 없는 경우 정보 가 있습니다.
친구를 추가할 수 없는 이유는 무엇입니까?
안녕하세요! 새 가격이 먼저 표시되고 이전 가격이 내려가는 식으로 계속 표시되도록 하려면 어떻게 해야 합니까? 명확하게 하기 위해 예를 만들었습니다.
안녕하세요! 새 가격이 먼저 표시되고 이전 가격이 내려가는 식으로 계속 표시되도록 하려면 어떻게 해야 합니까? 명확하게 하기 위해 예를 만들었습니다.
나는 예를 만들었고, 당신은 조건을 어느 정도 이해하게 될 것입니다.
나는 예를 만들었고, 당신은 조건을 어느 정도 이해하게 될 것입니다.
안녕하세요! 새 가격이 먼저 표시되고 이전 가격이 내려가는 식으로 계속 표시되도록 하려면 어떻게 해야 합니까? 명확하게 하기 위해 예를 만들었습니다.
다음은 완전히 원시적인 코드입니다.
다음은 완전히 원시적인 코드입니다.
안녕하세요. 기본 스크립트를 사용하여 전략 테스터 에서 거래 주문을 열려고 시도했지만 작동하지 않았습니다.
정수 시작()
{
//----
인트르;
이중 요청=종료[0]+MarketInfo(_Symbol,MODE_SPREAD)*포인트;
res=OrderSend(Symbol(),OP_BUY,0.1,요청,3,0,0,"",0,0,파란색);
if(res>-1)Alert("구매 주문이 티켓으로 열렸습니다. ",res);
//----
리턴(0);
}
시각화 모드에서 테스터의 차트에 스크립트를 던지지만 MT4 터미널에서 거래 주문이 열립니다.
또한 전략 테스터에서 SimpleFXTester_v2.ex4를 사용하여 미결 주문에 대한 정보를 얻지 못합니다.
그것을 알아내는 데 도움이되는 거대한 요청.
안녕하세요. 기본 스크립트를 사용하여 전략 테스터에서 거래 주문을 열려고 시도했지만 작동하지 않았습니다.
정수 시작()
{
//----
인트르;
이중 요청=종료[0]+MarketInfo(_Symbol,MODE_SPREAD)*포인트;
res=OrderSend(Symbol(),OP_BUY,0.1,요청,3,0,0,"",0,0,파란색);
if(res>-1)Alert("구매 주문이 티켓으로 열렸습니다. ",res);
//----
반환(0);
}
시각화 모드에서 테스터의 차트에 스크립트를 던지지만 MT4 터미널에서 거래 주문이 열립니다.
또한 전략 테스터에서 SimpleFXTester_v2.ex4를 사용하여 미결 주문에 대한 정보를 얻지 못합니다.
그것을 알아내는 데 도움이되는 거대한 요청.