初略看代码,已经声明过变量,依然出现未声明的标识符错误
if (depth == 8) {
cv::Mat img(height, width, CV_8UC1); //无符号
}
else {
cv::Mat img(height, width, CV_16UC1); //无符号
}
std::cout << img.rows;
问题出在if语句中,其实这只是一个临时变量,在出了if语句就不存在了
解决方式:在if语句外声明,在if语句内初始化
cv::Mat img;
if (depth == 8) {
img.create(height, width, CV_8UC1); //无符号
}
else {
img.create(height, width, CV_16UC1); //无符号
}
std::cout << img.rows;