pointer::as_mut 的原型是
unsafe fn as_mut(self) -> ...
NonNull::as_mut 的原型是unsafe fn as_mut(&mut self) -> ...
在 NonNull
也是 Copy
的情况下,为什么前者是 self
而后者是 &mut self