1. 程式人生 > >解決辦法 - 錯誤 C3688 文字字尾“CV_VERSION”無效;未找到文文字運算子或文字運算子模板“operator """"CV_VERSION

解決辦法 - 錯誤 C3688 文字字尾“CV_VERSION”無效;未找到文文字運算子或文字運算子模板“operator """"CV_VERSION

在讀毛星雲老師的《OpenCV3 程式設計入門一書中》,2.7小節中,講到了如何智慧顯示當前使用的OpenCV版本,並給出了程式碼示例:
printf("\t 當前使用的Open CV 版本為 OpenCV "CV_VERSION);
但在實際的除錯過程中,顯示錯誤:

錯誤 C3688 文字字尾“CV_VERSION”無效;未找到文文字運算子或文字運算子模板“operator “”""CV_VERSION”

而後,查看了CV_VERSION的定義
在這裡插入圖片描述
繼續檢視:
CV_VERSION_MAJOR
在這裡插入圖片描述

可以看出,CV_VERSION實際上是一個字串型別的巨集定義,因此將程式碼修改為:

printf("\t 當前使用的OpenCV版本為 OpenCV %s", CV_VERSION);

完成的CPP檔案為:

#include <opencv2/opencv.hpp>
using namespace cv;

void main()
{
	// 智慧顯示當期使用的OpenCV版本
	printf("\t 當前使用的OpenCV版本為 OpenCV %s", CV_VERSION);
	getchar();									// 等待字元輸入,用以視窗保持
}

可以看到:
在這裡插入圖片描述
從而解決問題!