Size: a a a

2020 December 21

RP

Roman Proskuryakov in Rust Beginners
ymdev
Хочу вот что спросить. Есть
fn a(arg: &str) {
   b(arg);
}

fn b(arg: &str) {
   println!("{}", arg);
}

fn main() {
   let word = "hello";
   a(&word);
}
Функция a принимает аргумент по ссылке и передает его в другую функцию. Нужно ли мне писать b(&arg), или если передать b(arg) - это уже будет передачей по ссылке, так как аргумент уже был типизирован.

Просто оба варианта компилятся и работают.
если компилируется (а оно должно), то всё ок. в расте && = &
источник

y

ymdev in Rust Beginners
Как-то странно, что это не стандартизировано. Где-то язык строг так, что и не повернешься, а где-то вот так 😐
источник

/

/bin/cat in Rust Beginners
Это было стандартизировано в растбуке при обсуждении c++ like обращений к указателям оператором ->
источник

RP

Roman Proskuryakov in Rust Beginners
источник

y

ymdev in Rust Beginners
Я просто че про это спрашиваю то. Я наткнулся вот на такое поведение. Есть код https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=ac8beae27ac4b3995dc93561f5e123f6

На 49 строке если передать &window, то получаю ошибку (смотри скриншот)
источник

y

ymdev in Rust Beginners
А если я передам просто window, то ошибка
источник

RP

Roman Proskuryakov in Rust Beginners
ymdev
Я просто че про это спрашиваю то. Я наткнулся вот на такое поведение. Есть код https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=ac8beae27ac4b3995dc93561f5e123f6

На 49 строке если передать &window, то получаю ошибку (смотри скриншот)
читай про лайфтаймы.
источник

A

Adatan in Rust Beginners
Как явно указать методу try_into, трейта TryInto
в какой тип пытаться конвертировать, как вот тут?
источник

JC

Julian =) Coffee in Rust Beginners
А тут что не так?
источник

MK

Max Kot in Rust Beginners
u16 больше не имеет имплементации display?
источник

A

Adatan in Rust Beginners
ну так у метода трейта нет абстрактных типов
источник

K

Kitsu in Rust Beginners
Adatan
Как явно указать методу try_into, трейта TryInto
в какой тип пытаться конвертировать, как вот тут?
использовать try_from
источник

A

Adatan in Rust Beginners
Только у самого трейта, я хз как это указать не через создание переменной и указания её типа
источник

A

Adatan in Rust Beginners
Kitsu
использовать try_from
хм, справедливо
источник

MB

Mikail Bagishov in Rust Beginners
Max Kot
u16 больше не имеет имплементации display?
имеет
источник

r

red75prime in Rust Beginners
Adatan
Как явно указать методу try_into, трейта TryInto
в какой тип пытаться конвертировать, как вот тут?
TryInto::<Document>::try_into(self.clone()) Технически это правильнее, так как в старых библиотеках могут быть типы с реализацией TryInto, без TryFrom.
источник

MK

Max Kot in Rust Beginners
Mikail Bagishov
имеет
Всё уже, clion мозги иметь начал
источник

MK

Max Kot in Rust Beginners
Что не имеет
источник

A

Adatan in Rust Beginners
red75prime
TryInto::<Document>::try_into(self.clone()) Технически это правильнее, так как в старых библиотеках могут быть типы с реализацией TryInto, без TryFrom.
Вот, то что нужно, спасибо!
источник

MK

Max Kot in Rust Beginners
Как исправить ошибку с анонимным временем жизни self? В новый поток надо его бросить
источник