Size: a a a

2020 December 20

JC

Julian =) Coffee in Rust Beginners
Ilya Kmet
вот тогда не ясно зачем пишут про размер указателя, что нам дает размер?
Чтоб положить на стэк нужно сдвинуть стек поинтер, чтоб было ясно куда ложить следующий элемент после него
источник

AL

Andrey @ozkriff Lesn... in Rust Beginners
Я еще докину про толстые указатели, на всякий: https://stackoverflow.com/questions/57754901/what-is-a-fat-pointer-in-rust
источник

V

V---V in Rust Beginners
Как можно проверить, что первая буква строки - это гласная? Итерироваться нельзя, по индексу обратиться тоже..
источник

MB

Mikail Bagishov in Rust Beginners
s.chars().next()
источник

c

call eax in Rust Beginners
Sugata KZS
Я в курсе, для этого !panic и использую, но он не должен же выдавать мне error 101)
Не !panic а panic!
источник

SK

Sugata KZS in Rust Beginners
call eax
Не !panic а panic!
прошу прощения, еще не привык к макросам
источник

НТ

Никита Тыманович... in Rust Beginners
Бан?)
источник

r🍪

radmirkus 🍪 in Rust Beginners
как Map в tuple конвертировать?

если быть точнее, я хочу считать числа с stdin вот так:
let (n,m) = q_line.trim().split(" ").map(|x| x.trim().parse::<i32>());
источник

r🍪

radmirkus 🍪 in Rust Beginners
ну понятно что map не ссответсвует шаблону, поэтому хочу получить кортеж. Или есть более хороший способ считать два числа через пробел?
источник

MK

Marat Khayrutdinov in Rust Beginners
А где у вас здесь Map? Не очень понятно
источник

r🍪

radmirkus 🍪 in Rust Beginners
Marat Khayrutdinov
А где у вас здесь Map? Не очень понятно
источник

MK

Marat Khayrutdinov in Rust Beginners
Map в данном случае, простите за мой французский - шаг маппинга из элементов-str в элементы-i32.
источник

MK

Marat Khayrutdinov in Rust Beginners
Вы что-то такое хотели?
        let mut nums = "1 2"
           .split_whitespace()
           .take(2)
           .map(|x| x.trim().parse::<i32>().unwrap());
       let n = nums.next().unwrap();
       let m = nums.next().unwrap();
источник

r🍪

radmirkus 🍪 in Rust Beginners
Marat Khayrutdinov
Вы что-то такое хотели?
        let mut nums = "1 2"
           .split_whitespace()
           .take(2)
           .map(|x| x.trim().parse::<i32>().unwrap());
       let n = nums.next().unwrap();
       let m = nums.next().unwrap();
Ага, что-то такое. Спасибо
источник

A

Artem in Rust Beginners
radmirkus 🍪
как Map в tuple конвертировать?

если быть точнее, я хочу считать числа с stdin вот так:
let (n,m) = q_line.trim().split(" ").map(|x| x.trim().parse::<i32>());
Можно .collect() попробовать. Я напишу как доберусь до компьютера, если ещё не разберётесь :)
источник

V

V---V in Rust Beginners
Хау. Функция вроде этой возвращает владение тем самым вектором, который был передан в качестве аргумента, или новый вектор, если возвращать не vct, а другой вектор, созданный в функции?
fn take(vct: Vec<String>) -> Vec<String> {}
источник

MK

Marat Khayrutdinov in Rust Beginners
V---V
Хау. Функция вроде этой возвращает владение тем самым вектором, который был передан в качестве аргумента, или новый вектор, если возвращать не vct, а другой вектор, созданный в функции?
fn take(vct: Vec<String>) -> Vec<String> {}
Зависит от имплементации.
UPD: если явно другой, то другой.
источник

MK

Marat Khayrutdinov in Rust Beginners
Artem
Можно .collect() попробовать. Я напишу как доберусь до компьютера, если ещё не разберётесь :)
.collect() будет аллоцировать память для коллекции и, подозреваю, в хипе. А вот итератор, если не ошибаюсь, не повлечет аллокации памяти для промежуточной структуры.
источник
2020 December 21

y

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

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

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

Просто оба варианта компилятся и работают.
источник

/

/bin/cat in Rust Beginners
Раст автоматически приводит к ближнему типу со ссылкой
источник