本文简要介绍rust语言中 Function std::ptr::hash
的用法。
用法
pub fn hash<T, S>(hashee: *const T, into: &mut S) where S: Hasher, T: ?Sized,
散列原始指针。
这可用于通过地址而不是它指向的值(这是 Hash for &T
实现所做的)来散列 &T
引用(隐式强制为 *const T
)。
例子
use std::collections::hash_map::DefaultHasher;
use std::hash::{Hash, Hasher};
use std::ptr;
let five = 5;
let five_ref = &five;
let mut hasher = DefaultHasher::new();
ptr::hash(five_ref, &mut hasher);
let actual = hasher.finish();
let mut hasher = DefaultHasher::new();
(five_ref as *const i32).hash(&mut hasher);
let expected = hasher.finish();
assert_eq!(actual, expected);
相关用法
- Rust hard_link用法及代码示例
- Rust home_dir用法及代码示例
- Rust UdpSocket.set_multicast_loop_v6用法及代码示例
- Rust i64.overflowing_add_unsigned用法及代码示例
- Rust Box.downcast用法及代码示例
- Rust BTreeMap.last_key_value用法及代码示例
- Rust str.make_ascii_uppercase用法及代码示例
- Rust u128.checked_pow用法及代码示例
- Rust usize.wrapping_mul用法及代码示例
- Rust AtomicU8.fetch_sub用法及代码示例
- Rust PanicInfo.payload用法及代码示例
- Rust MaybeUninit.assume_init_mut用法及代码示例
- Rust String.try_reserve用法及代码示例
- Rust Mutex.new用法及代码示例
- Rust f32.exp用法及代码示例
- Rust Result.unwrap_or_else用法及代码示例
- Rust slice.sort_unstable_by_key用法及代码示例
- Rust Formatter.precision用法及代码示例
- Rust i128.log2用法及代码示例
- Rust OsStr.to_ascii_uppercase用法及代码示例
- Rust f32.hypot用法及代码示例
- Rust RefCell.try_borrow_unguarded用法及代码示例
- Rust i16.log10用法及代码示例
- Rust LowerExp用法及代码示例
- Rust HashSet.get_or_insert_with用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::ptr::hash。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。