2

你如何声明这样定义的函数:

void func(cv::Mat &img)
{
    ...
}

更多细节:

我在“main”函数下方的 main.cpp 文件中定义了函数“func”。编译器抱怨它不知道函数“func”是什么,所以我尝试将原型放在“main”函数之上。

我试过了

void func(cv::Mat);

但这没有用。

4

1 回答 1

1

宣布

只是

void func(cv::Mat &img);

就是这样。甚至只是

void func(cv::Mat &);

因为非定义声明中的参数名称没有任何作用(除了使代码更具可读性)。

然而,对于 C++(和 C)中的大多数实体,定义只是一种特定类型的声明(即术语“定义”可以被认为只是“定义声明”的简写)。通过定义这个函数,你也声明了它(对于定义后面的代码)。

于 2012-11-13T03:15:29.977 回答