回答編集履歴

1

修正

2018/10/06 12:22

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -1,6 +1,6 @@
1
- std::find_if で該当する要素を指すイテレータを取得し、
1
+ [std::find_if](https://cpprefjp.github.io/reference/algorithm/find_if.html) で該当する要素を指すイテレータを取得し、
2
2
 
3
- std::distance で先頭要素との距離を取ってやれば良いかと思います。
3
+ [std::distance](https://cpprefjp.github.io/reference/iterator/distance.html) で先頭要素との距離を取ってやれば良いかと思います。
4
4
 
5
5
  ```C++
6
6
 
@@ -46,7 +46,17 @@
46
46
 
47
47
  );
48
48
 
49
+ if(it == std::end(data)) {
50
+
51
+ std::cout << "not found";
52
+
53
+ }
54
+
55
+ else {
56
+
49
- std::cout << std::distance(std::begin(data), it);
57
+ std::cout << std::distance(std::begin(data), it);
58
+
59
+ }
50
60
 
51
61
 
52
62
 
@@ -58,7 +68,7 @@
58
68
 
59
69
 
60
70
 
61
- **実行結果** [Wandbox](https://wandbox.org/permlink/O23KXB5Zc5DilKtL)
71
+ **実行結果** [Wandbox](https://wandbox.org/permlink/GCveUTJfH4yUhHLb)
62
72
 
63
73
  ```
64
74