2013-05-10 20 views
0

openCV中調用imread的區別是什麼?在我的本地機器上,它們都工作。在openCV中調用`imread`有什麼區別?

1) cv::imread(filename.c_str(), CV_LOAD_IMAGE_COLOR); 
2) cv::imread(filename,   CV_LOAD_IMAGE_COLOR); 

在第一種情況下,我們將std :: string轉換爲C風格字符串。 在第二種情況下,我們只是向它傳遞一個std :: string。 這是否等同於?

回答

2

這些調用具有相同的效果。 cv::imread需要const std::string&作爲第一個參數,因此第一個版本將導致創建一個臨時的std::string對象,該對象由filename.c_str()返回的const char*構建。

+0

謝謝你的回答。 – izi 2013-05-10 11:24:28