C++ 在C+中的类中嵌入的其他函数中使用main函数的结果+;
假设这是我的主要功能代码:C++ 在C+中的类中嵌入的其他函数中使用main函数的结果+;,c++,parameter-passing,C++,Parameter Passing,假设这是我的主要功能代码: m是该函数的最终结果矩阵,shaprDetect()是class Vsharp的函数。现在,我想使用函数shaprDetect中的m对其进行一些处理 void Vsharp::shaprDetect(){} 现在告诉我如何在这个函数中使用m。 他们都是同一个项目的一部分 int main(int argc,char*argv[]) { m.at<float>(i,j) = exp(-RR/(2b2))(1-exp(-S2/(2c2)))*exp(
m
是该函数的最终结果矩阵,shaprDetect()
是class Vsharp
的函数。现在,我想使用函数shaprDetect
中的m
对其进行一些处理
void Vsharp::shaprDetect(){}
现在告诉我如何在这个函数中使用m
。
他们都是同一个项目的一部分
int main(int argc,char*argv[])
{
m.at<float>(i,j) = exp(-RR/(2b2))(1-exp(-S2/(2c2)))*exp(-hypotenuse/gradscale);
return 0;
}
intmain(intargc,char*argv[])
{
m、 at(i,j)=exp(-RR/(2b2))(1-exp(-S2/(2c2)))*exp(-斜边/梯度标度);
返回0;
}
您不能真正使用main的返回值。因为你的程序已经退出了。假设您的shaprDetect方法实际上接受了一个参数m,请执行如下操作(但请注意,由于您没有发布关于m是什么的任何详细信息,我不得不在这里猜测)
intmain(intargc,char*argv[])
{
m、 at(i,j)=
exp(-RR/(2b2))(1-exp(-S2/(2c2))*exp(-斜边/刻度);
//现在在这里调用shaprDetect函数
Vsharp vs;
vs.shaprDetect(m);
返回0;
}
这是格式错误的代码。或者所有参数都是全局的,可以从shaprDetect()中访问m,或者程序无法编译。基本上,m是一个图像矩阵。这意味着我们不必在Vsharp类的函数shaprDetect中使用main函数的结果,而必须在main函数中使用函数shaprDetect。基本上就是这样,是的。但这是最基本的东西。给自己找一本关于C++的好书。谢谢你的回答
int main(int argc,char*argv[])
{
m.at<float>(i,j) =
exp(-RR/(2b2))(1-exp(-S2/(2c2)))*exp(-hypotenuse/gradscale);
//now call your shaprDetect function here
Vsharp vs;
vs.shaprDetect(m);
return 0;
}