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

 
ivandurak :

비트 필드에 최적화하십시오. 이 경우에는 추가 패스가 없습니다.

예를 들어:

 input int bp= 0 ;
int a= 0 ;
int b= 0 ;
Start()
{
 switch(bp)
   {
     case 0 : a= 0 ; b= 0 ; break ;
     case 1 : a= 0 ; b= 1 ; break ;
     case 2 : a= 1 ; b= 0 ; break ;
     default : a= 1 ; b= 1 ; break ;    
   }
}

주어진 매개변수에서 최적화합니다. 이 예에서 bp는 0에서 3으로 최적화됩니다.

 
ivandurak :
당신이 할 수 있는지 여부에 관계없이 평결을 쓰는 것을 잊었습니다.
나는 아무것도 잊지 않았다 :) 내가 올바르게 행동하는 방법을 정확히 알고 있다면 나는 당신에게 말할 것입니다. 부정적인 평결을 내리는 것은 다소 주제넘은 일입니다. 해결책에 대한 무지가 바로 이 해결책의 부재를 의미하지 않기 때문입니다.
 
아이디어는 명확합니다. 흥미롭게도 유전학은 그러한 속임수로 미쳐버리지 않을 것입니다. 원칙적으로 작업 매개 변수 집합은 0 결과를 제공하고 추가 선택에 참여하지 않는 것으로 나타났습니다. IMHO, 관련 최적화 매개 변수와 같은 메타 인용문에 희망 사항을 작성하는 것이 좋습니다. 거짓이면 정렬할 필요가 없습니다.
 
Yedelkin :

"더 쉽게"는 어떻습니까? :) Expert Advisor 삭제 조건 존재 REASON_INITFAILED - 여전히 추적해야 합니다. 이것은 지루해 보이는 것입니다.

우아한 솔루션이 없으면 먼저 "더 쉬운" 솔루션을 사용할 수 있습니다. 더 나은 것이 있습니다. 언제든지 교체할 수 있습니다. :)
 
ivandurak :
원칙적으로 작업 매개 변수 집합은 0 결과를 제공하고 추가 선택에 참여하지 않는 것으로 나타났습니다.
우리가 내 음산한 아이디어에 대해 이야기하는 경우에는 그렇지 않습니다. "작업 매개변수 세트"와 첫 번째 trpar2=false를 사용하면 패스가 완전히 작동하는 결과를 제공합니다. 동일한 "매개변수 작업 세트" 및 trpar2=false 를 사용하는 모든 후속 패스에서 0이 즉시 발행되지만 동시에 "작업 매개변수 세트"가 어떤 방식으로든 선택에 참여하고 중복 패스가 끊다. 결국, 이것이 당신이 원했던 것입니까?
 
tol64 :
우아한 솔루션이 없으면 먼저 "더 쉬운" 솔루션을 사용할 수 있습니다. 더 나은 것이 있습니다. 언제든지 교체할 수 있습니다. :)
다시 한 번 말하지만, 무서운 것은 일정보다 앞서 통과를 완료하라는 명령이 아니라, 그것이 무엇이든 간에 다소 원시적인 솔루션입니다. Havoc - 통과의 조기 완료를 위한 조건 모니터링. 당신의 제안 덕분에 통로가 예정보다 빨리 완료된다는 사실에서 "추적 블록"자체의 지루함은 어떤 식 으로든 줄어들지 않으며이 블록의 우아함은 어떤 식 으로든 증가하지 않습니다.
 
Yedelkin :
우리가 내 음산한 아이디어에 대해 이야기하는 경우에는 그렇지 않습니다. "작업 매개변수 세트"와 첫 번째 trpar2=false를 사용하면 패스가 완전히 작동하는 결과를 제공합니다. 동일한 "매개변수 작업 세트" 및 trpar2=false 를 사용하는 다른 모든 패스의 경우 0이 즉시 생성되지만 동시에 "작업 매개변수 세트"가 어떤 방식으로든 선택에 참여합니다. 결국, 이것이 당신이 원했던 것입니까?

약간 개선될 수 있습니다. 구조에 최적화 매개변수를 작성하고 변수와 마찬가지로 이 매개변수(단순 구조)로 작업합니다. 이 같은

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=파2 ; return(9) } 여기에서 Par 및 Parold는 최적의 매개변수가 다른 통화 쌍에서 작성된 구조입니다. 얼마나 많은 커플, 그렇게 많은 if, 그것은 그렇게 추해 보이지 않습니다. 고맙습니다.

 
Yedelkin :
다시 한 번 말하지만, 무서운 것은 일정보다 앞서 통과를 완료하라는 명령이 아니라, 그것이 무엇이든 간에 다소 원시적인 솔루션입니다. Havoc - 통과의 조기 완료를 위한 조건 모니터링. 당신의 제안 덕분에 통로가 예정보다 빨리 완료된다는 사실에서 "추적 블록"자체의 지루함은 어떤 식 으로든 줄어들지 않으며이 블록의 우아함은 어떤 식 으로든 증가하지 않습니다.

글쎄, 무슨 말을 하고 싶었어? 전혀 사용하지 않는 우아한 해결책이 없다면 어떻게 될까요? 그렇긴 하지만, 당신이 말했듯이 "지루하다"?

한마디로 우리는 합격했다. 그리고 홍수로 인한 것은 코드보다 더 끔찍합니다. :)

 
ivandurak :

약간 개선될 수 있습니다. 구조에 최적화 매개변수를 작성하고 변수와 마찬가지로 이 매개변수(단순 구조)로 작업합니다. 이 같은

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=파2 ; return(9) } 여기에서 Par 및 Parold는 최적의 매개변수가 다른 통화 쌍에서 작성된 구조입니다.

글쎄, 예, 그런 것입니다. trpar2=false 가 발생한 모든 "작업 매개변수 세트"를 기억해야 한다는 것이 밝혀졌습니다. 저것들. 해당 구조의 배열이 엄청나게 확장됩니다. 또한 새 패스 중에 기억된 내용을 읽으려면 파일에 저장해야 합니다.
 
ivandurak :

약간 개선될 수 있습니다. 구조에 최적화 매개변수를 작성하고 변수와 마찬가지로 이 매개변수(단순 구조)로 작업합니다. 이 같은

if(!trpar && Par1==Parold1 && Par2==Parold2) { Parold1=Par; Parold2=파2 ; return(9) } 여기에서 Par 및 Parold는 최적의 매개변수가 다른 통화 쌍에서 작성된 구조입니다. 얼마나 많은 커플, 그렇게 많은 if, 그것은 그렇게 추해 보이지 않습니다. 고맙습니다.

또 다른 옵션이 있습니다.

함수 살펴보기: OnTesterInit (), OnTesterPass (), OnTesterDeinit ()

AND: FrameFirst (), FrameFilter (), FrameNext (), FrameInputs (), FrameAdd ()

그것이 바로 그들이 설계된 이유입니다. :)

즉, 현재 최적화에서 모든 패스의 모든 매개변수를 언제든지 요청할 수 있습니다.