(например, Packed), как мне правильно формировать указатели на его элементы?
Допустим, у меня есть let boxed: Box<[T]>;. Как мне сделать указатель на n-й элемент?
fn get_ptr<T>(slice: &Box<[T]>, index: usize) -> Option<*const T> { Some(slice.get(index)? as *const T) } ?
Ну, Miri недовольна: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=85f958ca5df7c62749ef995de6f5a8ac
addr_of!()/addr_of_mut!()?
конкретно в этом случае просто получаешь указатель из бокса и прибавляешь n
Обсуждают сегодня