내가into_boxed_slice() 메소드의 사용법은 무엇입니까? <code>Vec<T></code>에 사용할 수있는 방법을 보면
into_boxed_slice(self) -> Box<[T]>
String
를 우연히 발견했다 또한 방법 (into_boxed_str(self)
)가 있습니다. Vec<T>
/String
에 대한 Deref
의 유용성은 공유 슬라이스 (&[T]
)처럼 취급 될 수 있지만 분명히 FFI를 제외하고는 소유 슬라이스 (Box<[T]>
)에 대해서는 사용하지 않습니다. Rust GitHub repo는 소수의 경우에만 into_boxed_slice()
을 사용합니다.
박스형 슬라이스를 만드는 방법은 std
에서 가능하며이 컨테이너는 기본 페이지에 나열되어 있으므로 유용한 정보가 누락 될 수 있습니다. 소유 슬라이스를 사용하여 Vec<T>
또는 String
을 사용해야하는 경우는 무엇입니까?
* 이유가 확실하지 않지만 'Box <[T]>'및 'Box'은 용량이 필요하지 않으므로 포인터 크기의 정수가 하나 작습니다. 크기를 조정할 수 없으므로 –
Shepmaster
이것에 대해 생각했지만, 전용 컨테이너를 갖기에 충분한 이유가되지는 않습니다. – ljedrz
"전용 컨테이너"가 무슨 뜻인지 잘 모르겠습니다. 이것은 기존 타입의 조합 인'Box'와'[T]'또는'str'입니다. 'Box'과 크게 다르지 않습니다. –
Shepmaster