回答編集履歴
2
修正
answer
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
> 2.YOLOv3Result型のstd::vectorを返り値に持つ関数なのかどうかわからない。関数だとしたらどうゆう構造、使い方でどのような意味の返り値を返してるのでしょか?
|
11
11
|
|
12
|
-
ここに yolov3_post_process の宣言は二つあります。これは同名で引数や戻り値の異なる関数が(少なくとも)二つあることを示します。このように同名の
|
12
|
+
ここに yolov3_post_process の宣言は二つあります。これは同名で引数や戻り値の異なる関数が(少なくとも)二つあることを示します。このように、一つのクラスに同名のメソッドを複数作ることをオーバーロードと呼びます。これらは名前は同じですが、異なった関数で、引数の数や種類で呼び分けます。
|
13
13
|
|
14
14
|
片方は YOLOv3Result が戻り値で、もう片方は std::vector<YOLOv3Result> が戻り値です。
|
15
15
|
std::vector<T> は配列の上等なものと思ってください。つまり片方は YOLOv3Result を一つしか返さないが、もう片方は複数返すということです。
|
1
追記
answer
CHANGED
@@ -3,4 +3,13 @@
|
|
3
3
|
|
4
4
|
この関数をどのように呼び出すかだけが示されており、実際の定義(関数の中身)はまた別にあります。
|
5
5
|
|
6
|
-
.hpp はヘッダファイルで、通常このような宣言ばかりが主に書かれます。.cpp という拡張子のファイルを探してみてください。もしかしたらソースは提供されていなくて、コンパイル済みかもしれません。
|
6
|
+
.hpp はヘッダファイルで、通常このような宣言ばかりが主に書かれます。.cpp という拡張子のファイルを探してみてください。もしかしたらソースは提供されていなくて、コンパイル済みかもしれません。
|
7
|
+
|
8
|
+
### 追記
|
9
|
+
|
10
|
+
> 2.YOLOv3Result型のstd::vectorを返り値に持つ関数なのかどうかわからない。関数だとしたらどうゆう構造、使い方でどのような意味の返り値を返してるのでしょか?
|
11
|
+
|
12
|
+
ここに yolov3_post_process の宣言は二つあります。これは同名で引数や戻り値の異なる関数が(少なくとも)二つあることを示します。このように同名の関数を複数作ることをオーバーロードと呼びます。名前は同じですが、異なった関数で、引数の数や種類で呼び分けます。
|
13
|
+
|
14
|
+
片方は YOLOv3Result が戻り値で、もう片方は std::vector<YOLOv3Result> が戻り値です。
|
15
|
+
std::vector<T> は配列の上等なものと思ってください。つまり片方は YOLOv3Result を一つしか返さないが、もう片方は複数返すということです。
|