2014-07-09 3 views
1

저는 Erlang을 처음 접했고 몇 일 동안 인터넷을 통해 서핑을하는 적절한 대답을 얻지 못했습니다. (의사 코드로 고려) 코드 세그먼트를 다음과 같이 뭔가를 코딩 할 : 끝에Erlang에서 변수를 다시 할당하는 방법은 무엇입니까?

Check =false; 
lists:foreach(fun(Row) -> 
     if somecondition -> 
      Check = true; 
     true -> ok 
     end 
end, RowList) 

나는 변수 확인의 값을 얻을 필요가있다. Erlang 에서처럼 변수에 값을 다시 할당 할 수는 없지만 위에 표시된 코드 블록의 끝에서 Check 값을 얻으려면 어떻게해야합니까?

+1

빠른 참고 : 아마도 목록을 사용하지 않을 것입니다. 아마도 얼랑 (Erlang)에서는 foreach를 매우 많이 사용하고 있으며, 비 기능적 언어의 유사한 구문 만큼은 아닙니다. 목록 : foreach는 주로 부작용을 위해 무언가를해야하는 경우에 유용합니다. 목록의 각 값을 인쇄합니다. 목록에 도달하는 대신 foreach : 목록을 반복 할 때 목록과 같은 상위 수준 함수를 변형/검사하는 방법에 대해 생각해보십시오. foldl, 목록 :지도, 목록 : any 등 – Chris

답변

1

목록을 가서 각 요소의 값을 수정하는 일반적인 방법은 lists:foldl/3http://www.erlang.org/doc/man/lists.html#foldl-3를 사용하는 것입니다. 특정 예제의 경우 목록을 사용하는 것이 쉽고 짧습니다. 위/2와 같이.

관련 문제