스택의 항목이 컴파일 타임에 알려진 크기를 가져야하는 이유는 무엇입니까?

Dec 03 2020

나는 왜 그것들이 일정한 크기 를 가져야하는지 알지만, 왜 그 크기가 컴파일 타임에 알려 져야하는지 이해하지 못한다 . C조차도 스택에서 가변 길이 배열을 허용합니다. 이 제한이 Rust에 어떤 도움이 되나요?

답변

4 SebastianRedl Dec 03 2020 at 00:26

C조차도 스택에서 가변 길이 배열을 허용합니다.

C는 사소한 의미로 인해이를 비교적 쉽게 지원할 수 있습니다.

destructors /를 호출해야 할 때 drop이것은 훨씬 덜 간단합니다. 그래서 Rust는 구현하려는 노력이고 그다지 많은 이점을주지 않기 때문에 처음에이를 지원하지 않았습니다.

결국 Rust는 RFC 1909 (크기가 지정되지 않은 rvalues ) 덕분 에 이를 지원할 것 입니다.