pub fn eq<T>(a: *const T, b: *const T) -> bool where T: ?Sized
Compare raw pointers for equality.
This is the same as using the ==
operator, but less generic: the arguments have to be *const T
raw pointers, not anything that implements PartialEq
.
This can be used to compare &T
references (which coerce to *const T
implicitly) by their address rather than comparing the values they point to (which is what the PartialEq for &T
implementation does).
#![feature(ptr_eq)] use std::ptr; let five = 5; let other_five = 5; let five_ref = &five; let same_five_ref = &five; let other_five_ref = &other_five; assert!(five_ref == same_five_ref); assert!(five_ref == other_five_ref); assert!(ptr::eq(five_ref, same_five_ref)); assert!(!ptr::eq(five_ref, other_five_ref));
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/ptr/fn.eq.html