オプションの引数として行列をとる関数をC++で記述したいと思います。関数を呼び出すときにユーザーが行列を渡すと、関数によって変更されるため、参照渡しを実装しています。私はOpenCVの3.2でこれをコンパイルしようとすると、私が得る、しかしOpenCV 3:オプションの引数としてcv :: Matを渡す方法
void foo(..., cv::Mat &matrix = cv::Mat()) {
// code
return;
}
:このprevious questionのための受け入れ答えによると、これはのような、デフォルト値に空のマットを作ることによって行うことができます
« 'cv :: Mat'型のrvalueから 'cv :: Mat &'型の非const参照の無効な初期化»エラー。
この機能はOpenCV 2.4以降に変更されていますか、それとも別の場所にある可能性がありますか?
は、残念ながら、あなたはで言われている矛盾、間違っているその質問の一部を使用するために管理しました最初の文章。 –
確かに、そのリンクで受け入れられた答えは部分的に間違っています。たぶん、それを解決して、それを重複としてマークする必要がありますか? –
私のオリジナルの投稿では指定しませんでしたが、この実装がいくつかの機能で使用されている他人のコード(githubから)をインポートしようとしていることが原因です。これは、私が引用したスレッドと組み合わされて、私が何とかして欠けているように動作させる要素があると私に信じさせました。たぶん私は人々を信じすぎるかもしれませんが、なぜ4000行以上のソースコードをアップロードして、それが最初に動作するかどうか確認することはありませんか? – hfs