0
最初のもの: 私は関連する問題を読んでいます&解決方法はエラーを修正しませんでした。クラス "std :: result"にタイプがありません
は考慮:
double foo(cv::InputArray Input1,
cv::InputArray Input2,
cv::InputOutputArray InOut,
cv::TermCriteria criteria=cv::TermCriteria(cv::TermCriteria::MAX_ITER+cv::TermCriteria::EPS, 50, 0.001)),
cv::InputArray Input3 = cv::noArray())
{
return 2;
}
私は関数を呼び出す場合:
cv::Mat In1, In2, InOut; //dummy for test
double ret = foo(In1, In2, InOut);
それがコンパイルします。だから私は:: STDとREFを試してみましたが、それは私に同じエラー与え
no type named "type" in class std::result
double ret = 0;
std::thread th(ret, &foo, &In1, &In2, InOut);
:
double ret = 0;
std::thread th(ret, &foo, std::ref(In1), std::ref(In2), std::ref(InOut));
あなたは 'のstd ::糸の第一パラメータとしてdoubleを渡す::スレッド "、私はそれが動作するとは思わない。 –
[C++:std :: threadからの単純な戻り値の可能な複製](https://stackoverflow.com/questions/7686939/c-simple-return-value-from-stdthread) –