Size: a a a

Rust — русскоговорящее сообществo

2020 November 03

А

Алексей in Rust — русскоговорящее сообществo
а не выйдет вернуть ссылку же
источник

DK

Dmitry Klimov in Rust — русскоговорящее сообществo
Насколько хорошо в этом контексте написана такая функция: /// Возвращает векто общих Карт из двух входящих векторов
pub fn intersect(one: &Vec<Card>, two: &Vec<Card>) -> Vec<Card>{
   let mut common = Vec::new();
   for card in one{
       for card_other in two{
           if card.code_value == card_other.code_value{
               common.push(card.clone());
               break;
           }
       }
   }
   common.clone()
}
источник

K

Kitsu in Rust — русскоговорящее сообществo
Алексей
а не выйдет вернуть ссылку же
как это не выйдет, есть box::leak же
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Можно вернуть common  без clone
источник

K

Kitsu in Rust — русскоговорящее сообществo
Dmitry Klimov
Насколько хорошо в этом контексте написана такая функция: /// Возвращает векто общих Карт из двух входящих векторов
pub fn intersect(one: &Vec<Card>, two: &Vec<Card>) -> Vec<Card>{
   let mut common = Vec::new();
   for card in one{
       for card_other in two{
           if card.code_value == card_other.code_value{
               common.push(card.clone());
               break;
           }
       }
   }
   common.clone()
}
возвращаемое значение не массив
источник

А

Алексей in Rust — русскоговорящее сообществo
Kitsu
как это не выйдет, есть box::leak же
ну так не стоит делать
источник

DK

Dmitry Klimov in Rust — русскоговорящее сообществo
Mag Pie
Можно вернуть common  без clone
В этом случае мы возвращаем ссылку на массив или что?
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Kitsu
как это не выйдет, есть box::leak же
Тебя Эрик укусил?
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Kitsu
возвращаемое значение не массив
Массив, только не сам, а объект массива со ссылкой на хип
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Dmitry Klimov
В этом случае мы возвращаем ссылку на массив или что?
Объект который оборачивает ссылку на кучу
источник

K

Kitsu in Rust — русскоговорящее сообществo
Mag Pie
Массив, только не сам, а объект массива со ссылкой на хип
ну т.е. нет
источник

А

Алексей in Rust — русскоговорящее сообществo
Dmitry Klimov
Насколько хорошо в этом контексте написана такая функция: /// Возвращает векто общих Карт из двух входящих векторов
pub fn intersect(one: &Vec<Card>, two: &Vec<Card>) -> Vec<Card>{
   let mut common = Vec::new();
   for card in one{
       for card_other in two{
           if card.code_value == card_other.code_value{
               common.push(card.clone());
               break;
           }
       }
   }
   common.clone()
}
тут clone не нужен
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Vec это обертка над ссылкой на кучу
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Dmitry Klimov
Насколько хорошо в этом контексте написана такая функция: /// Возвращает векто общих Карт из двух входящих векторов
pub fn intersect(one: &Vec<Card>, two: &Vec<Card>) -> Vec<Card>{
   let mut common = Vec::new();
   for card in one{
       for card_other in two{
           if card.code_value == card_other.code_value{
               common.push(card.clone());
               break;
           }
       }
   }
   common.clone()
}
А почему бы просто common не вернуть?
источник

DK

Dmitry Klimov in Rust — русскоговорящее сообществo
То есть clone в данном случае делает лишнюю работу?
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Dmitry Klimov
То есть clone в данном случае делает лишнюю работу?
Да
источник

DK

Dmitry Klimov in Rust — русскоговорящее сообществo
В rust есть куча? я думал все в стеке хранится 🙁
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Dmitry Klimov
В rust есть куча? я думал все в стеке хранится 🙁
Оооо
источник

MP

Mag Pie in Rust — русскоговорящее сообществo
Растбук не читай, лей сразу в прод
источник

N

Nickolay in Rust — русскоговорящее сообществo
Mag Pie
Растбук не читай, лей сразу в прод
++
источник