gpt4 book ai didi

c++ - 我在 C++ 中遇到错误 - 错误 : cannot convert ‘cv::Point_’ to ‘cv::Point* {aka cv::Point_*}’ in return

转载 作者:行者123 更新时间:2023-11-30 17:37:33 33 4
gpt4 key购买 nike

我尝试运行下面的代码,但出现错误。我正在为名为“Mat::at”的 OpenCV 函数创建一个包装器,并尝试使用“G++”将其编译为 Ubuntu Trusty 上的“.so”。我在下面列出了“.cpp”文件、“.hpp”文件、错误和编译命令的内容。如果您能将此 C++ OpenCV 函数作为 C 指针返回,我将不胜感激。因为那是我的目标。谢谢。

错误:

 error: cannot convert ‘cv::Point_<int>’ to ‘cv::Point* 
{aka cv::Point_<int>*}’ in return
return self->at<Point>(row, col);

(我也得到正常的“Contol到达非空函数错误的结尾”)

CPP:

 Point* cv_Mat_at_Point(Mat* self, int row, int col) {
return self->at<Point>(row, col);
}

Hpp:

 Point* cv_Mat_at_Point(Mat* self, int row, int col)

编译命令:

 g++ -Wall -shared -fPIC -o c-binding.so c-binding.cpp

编辑 RedX:

Point* cv_create_Point(int x, int y) {
return new Point(x, y);
}

最佳答案

应该是return &self->at<Point>(row, col);

因为该函数需要 Point*

关于c++ - 我在 C++ 中遇到错误 - 错误 : cannot convert ‘cv::Point_<int>’ to ‘cv::Point* {aka cv::Point_<int>*}’ in return,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22356340/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com