int FindLastOpenTime( int type, int imagic)
{
for ( int i = OrdersTotal () - 1 ;i>= 0 ;i--)
{
if ( OrderSelect (i,SELECT_BY_POS,MODE_TRADES))
if (OrderSymbol()== Symbol () && OrderType()==type && OrderMagicNumber()==magic && OrderOpenTime()>time)
{
time=OrderOpenTime();
}
}
return (time);
}
순환 피연산자의 구성과 같은 논리에 의해 항상 죽임을 당합니다.
완전 이해불가...
당신이 이해하지 못한다면, 나는 단지 동정할 수 있습니다.
저에게는 표준 논리가 더 눈에 띄고 이해하기 쉽습니다.
저에게는 한 줄이나 한 열에 대괄호를 배치하는 것이 훨씬 더 논리적입니다. 블록이 어디에서 시작되고 끝나는지 명확하지 않은 코드를 이해하는 것은 매우 어렵습니다. 글쎄, 그러한 형식화의 목적이 코드의 의미를 적으로부터 숨기는 것이라면 목표가 달성됩니다.
중첩된 if'ami가 있는 구성은 항상 종료됩니다. 이러한 중첩을 처음부터 생성하려면 어떻게 해야 합니까?
당신이 이해하지 못한다면, 나는 단지 동정할 수 있습니다.
당신의 논리는 표준이 아닙니다. 그녀는 틀렸다.수정, 문구만 잘라주세요 :-)
--
비표준 논리 - 그것이 틀렸다는 것을 의미하지는 않습니다.
--
비표준 로직의 경로가 표준 로직보다 짧은 경우 - 입력과 출력이 동일한 조건에서
지옥에 표준!
그렇다면 나는 비표준 논리를위한 것입니다
--
예, 위 코드의 위기는 읽기 어렵습니다 ...
아주 짧은 코드를 만나곤 했지만! 읽기 힘든...
유지 관리 - 이러한 코드 복제는 이상적이지 않습니다.
당신이 유통을 위해 글을 쓴다면, 당신은 일반적으로 이 모든 것을 동반하는 동료들을 돌보게 됩니다.
누군가가 코드를 깨뜨릴 것이라고 계산에 적는다면!
야생을 헤쳐나가기 위한 이상적인 논리 - 올바르게 작성하지만 읽을 수 없는 코드 를 만듭니다.
펑크가 난 곳을 이해하지 못합니까? 그리고 왜 두 번째인가? 이것이 두 번째라면 첫 번째는 어디에 있습니까?
꾸지람을 당한 코드는 정말 별거 아닌데 헷갈리기 딱!
2 비냉. Victor, 왜 항상 주문 선택 기능을 호출 합니까? 하나의 루프에서 모든 변수를 채우는 것이 더 쉽습니다.
그리고 나를 위해 그것은 꽤 좋습니다 :
int time;
MQL에서 && 및 || C++의 그것과 다르기 때문에 조건을 분리하는 것이 합리적입니다.
2 비냉. Victor, 왜 항상 주문 선택 기능을 호출합니까? 하나의 루프에서 모든 변수를 채우는 것이 더 쉽습니다.
...모두에게 똑같지는 않습니다.
나는 코드의 속도를 높이는 것만으로 요점을 본다
대체로 90%의 경우 속도는 중요하지 않습니다. 요점은 초기에 코드를 작성하고 가능한 한 쉽게 읽을 수 있도록 만드는 것입니다.
그런 다음 시간이 중요한 경우 속도를 최적화합니다.
여기 에서 여기로 이동