знак) ?
это ее доки
mpl<T: Clone + Num + Neg<Output = T>> Complex<T> {
/// Returns the complex conjugate. i.e. re - i im
#[inline]
pub fn conj(&self) -> Self {
Self::new(self.re.clone(), -self.im.clone())
}
реальность
let mut p = Complex::new(1,0);
println!("{}", p); // => 1+0i
p.conj();
println!("{}", p); // => 1+0i
знак не меняется а надо чтоб стало -1-0i
Вроде описание и реализация совпадает. Функция меняет знак только у мнимой части.
p.conj возвращает новый объект, а ты пишешь старый
пробовал - тоже самое
Вполне возможно, что 0 и -0 одно и то же
когда происходит что-то странное, то стоит посмотреть нет ли ворнингов. Например таких что mut не нужен и его можно убрать
здесь вы правы / подставил 9 и получил 3-9i знак сменился )
Обсуждают сегодня