문제

F#에서 사용하려는 간단한 C# 구조체가 있습니다.

public struct Stat : IEquatable<Stat>
{
    public ulong st_dev;
    public long st_blocks;
}

내가 찾은 방식은 너무 C#적이고 변경 가능하다고 느껴집니다.

stbuf <- new Stat()
stbuf.st_blocks <- 0
stbuf.st_dev <- 1

C#에서는 nice를 사용할 수 있다는 점은 말할 것도 없습니다. new Stat { st_blocks = 0, st_dev = 1 } 구문 설탕...

이제 F#으로 변환되었으므로 할당 연산자에 알레르기가 생기기 시작했습니다. <-, 그렇다면 이를 개선할 수 있는 방법은 없을까요?

도움이 되었습니까?

해결책

생성자에서 속성이나 변경 가능한 필드를 설정하는 구문은 다음과 같습니다.

stbuf <- Stat(st_blocks = 0L, st_dev = 1UL)

필요하지 않습니다. new 일반적으로 권장되는 점을 제외하면 F#에서는 IDisposable 것들.또한 적절한 유형의 리터럴을 지정하는 데 필요한 접미사에 유의하세요.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top