【发布时间】:2014-03-19 13:35:06
【问题描述】:
我有一个需要调试的 opencv c++ imread 的 C 包装器(如下)。原因是当我用另一种语言包装 C 包装器时它不起作用,文件名参数没有被正确接收
Mat* cv_imread(String* filename, int flags)
{
return new Mat(cv::imread(*filename, flags));
}
所以我需要通过执行类似于以下函数的操作来调试它:
using namespace std;
Mat* cv_imread(String* filename, int flags)
{
cout << filename; // but I'd need to find out how to print contents of filename other
//than just the pointer
return new Mat(cv::imread(*filename, flags));
}
让我们说String* filename = "home/user/test.jpeg"
这就是我需要打印的不是内存中 8 或 9 个字符的指针位置。
所以如果有人能告诉我如何取消引用String* filename,我就可以cout << filename-><add text here>;
【问题讨论】:
-
String到底是什么? -
@crashmstr:它是 OpenCV 库的 C 包装器。这就是为什么它被标记为 opencv。
-
@crashmstr,opencv 最近自带了自己的 cv::String 类..
-
一致使用
cv::前缀会很好......现在听起来像是一个简单的文档搜索。 -
@adripanico 感谢您的评论...您实际上回答了我的?最好的......你应该发布作为答案,所以我可以投票给你:)