Visual studio 2010 项的计算结果不适用于具有1个参数的函数

Visual studio 2010 项的计算结果不适用于具有1个参数的函数,visual-studio-2010,visual-c++,opencv,image-processing,c++-cli,Visual Studio 2010,Visual C++,Opencv,Image Processing,C++ Cli,请看一下下面的OpenCV代码 Mat *curent; current = new Mat(); cv::Rect bRect = cv::boundingRect(Mat(*points).reshape(2)); Mat roi = *current(bRect); 在这里,我试图获得一个名为ROI的投资回报率。但是,每当我尝试获取并执行上述代码的最后一行时,我就会得到一个错误项,它不会对一个带1个参数的函数求值。在C++中,我遵循了同样的方法,在没有指

请看一下下面的OpenCV代码

    Mat *curent;
    current = new Mat();
    cv::Rect bRect = cv::boundingRect(Mat(*points).reshape(2));

    Mat roi = *current(bRect);
在这里,我试图获得一个名为
ROI
的投资回报率。但是,每当我尝试获取并执行上述代码的最后一行时,我就会得到一个错误
项,它不会对一个带1个参数的函数求值。在C++中,我遵循了同样的方法,在没有指针的情况下得到一个ROI,并且它们工作了。我想问题是指针
当前的
current
必须是指针,因为局部变量以令人难以置信的方式减慢了应用程序的速度


那么,我如何解决这个问题并获得投资回报率呢?

请扔掉那些指针

您将破坏内部Mat refcounts,产生未定义的行为和内存泄漏

“局部变量以令人难以置信的方式减慢了应用程序的速度。”

你认为复制一个58字节的结构是原因吗?我就是不相信你


无论如何,我会给你一个提示,()运算符的优先级高于*运算符。

请扔掉那些指针

您将破坏内部Mat refcounts,产生未定义的行为和内存泄漏

“局部变量以令人难以置信的方式减慢了应用程序的速度。”

你认为复制一个58字节的结构是原因吗?我就是不相信你


无论如何,我会给你一个提示,()运算符的优先级高于*运算符。

这是一个实时应用程序。这就是为什么重新创建变量会让事情变得更糟。我已经测试过了。无论如何,我没有得到你的暗示。请您描述/提供示例好吗?Mat roi=(*当前)(bRect);这是一个实时应用程序。这就是为什么重新创建变量会让事情变得更糟。我已经测试过了。无论如何,我没有得到你的暗示。请您描述/提供示例好吗?Mat roi=(*当前)(bRect);