- 733 名前:デフォルトの名無しさん mailto:sage [2021/08/18(水) 19:37:59.33 ID:e8CK2aK/.net]
- 質問したようなのと近い流れになってて助かった
(0..7).filter(|&x| x == 0); ↑これ通るから ↓こうしたら駄目だった。なんでなん? let mut vec0 = vec![1, 2, 3, 4, 5, 6]; vec0.iter().filter(|&x| x == 1); そこで、様々テストしたら、↓の方法でコンパイルが通ることがわかった どのやり方が一般的なん?個人的には1か4かと思うんだけど。あと、2は+0することで型推論が働いてるのん? vec0.iter().filter(|&x| *x == 1); //1 vec0.iter().filter(|&x| x + 0 == 1); //2 vec0.iter().filter(|&x| x == &1); //3 vec0.iter().filter(|&x| x.clone() == 1); //4 vec0.iter().filter(|x| **x == 1); //5 vec0.iter().filter(|x| *x == &1); //6
|

|