OCaml
변경 가능한 레코드 필드
수색…
소개
대부분의 OCaml 값과 마찬가지로, 레코드는 기본적으로 불변입니다. 그러나 OCaml은 명령형 프로그래밍을 처리하기 때문에 개별 필드를 변경할 수있는 방법을 제공합니다. 변경 가능한 필드는 기능 업데이트와 같은 일반적인 기능 기술에 의존하지 않고 할당을 통해 적절한 위치에서 수정할 수 있습니다.
부작용을 도입하는 동안, 변경 가능한 필드는 올바르게 사용될 때 성능이 향상 될 수 있습니다.
변경 가능한 필드가있는 레코드 선언하기
다음에서는 weight 가 변경 가능한 필드로 선언됩니다.
type person = {
name: string;
mutable weight: int
};;
비고 : 디자인에 관한 한, person 의 이름이 변하기 쉽지는 않지만 그 무게는 중요하다는 사실을 고려할 것입니다.
변경 가능한 필드를 사용하여 레코드 초기화하기
변경 가능한 필드로 레코드를 초기화하는 것은 일반 레코드 초기화와 다르지 않습니다.
let john = { name = "John"; weight = 115 };;
값을 가변 필드로 설정하기
변경 가능한 레코드 필드에 새 값을 할당하려면 <- 연산자를 사용하십시오.
john.weight <- 120;;
주 : 이전 표현식에는 unit 유형이 있습니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow