Как вы объявляете функцию, определенную так:
void func(cv::Mat &img)
{
...
}
Больше деталей:
Я определил функцию «func» в моем файле main.cpp под функцией «main». Компилятор пожаловался, что не знает, что такое функция «func», поэтому я попытался поставить прототип над «основной» функцией.
Я старался
void func(cv::Mat);
но это не сработало.
декларировать?
Просто
void func(cv::Mat &img);
и это все. Или даже просто
void func(cv::Mat &);
поскольку имена параметров в неопределяемых объявлениях не имеют смысла (кроме того, чтобы сделать код более читабельным).
Тем не менее, для большинства объектов в C ++ (и C) определение это просто определенный вид декларация (то есть термин «определение» можно рассматривать как просто сокращение от «определения декларации»). От определяющий эта функция вы также объявленный это (для кода, который следует за определением).
Других решений пока нет …