cvLoadImage适用于字符串常量但不适用于c_str()

时间:2012-12-07 16:50:47

标签: opencv

我正在使用cvloadimage在我的程序中打开图像。图像位于外部目录中,使用文件名中的当前时间生成。

当我尝试以这种方式加载图像时:

IplImage *image = cvLoadImage(path.c_str,CV_LOAD_IMAGE_COLOR);

图像结构将为NULL,应用程序将停止q分段错误。 当我尝试以这种方式加载图像时:

IplImage *image = cvLoadImage("path/images/image_2012_11_25.jpg",CV_LOAD_IMAGE_COLOR);

然后效果很好。

问题是cvLoadImage无法接受任何类型的文字,只有const char*? 但是c_str()会将字符串转换为char*,对吗?

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

我在写入文件时遇到了同样的问题,因此我使用了以下代码:

const char *M=s.c_str();
 file.write(M,s.size());

希望它有效......