Visual Studio 2019 中的 GDAL 库头文件错误和警告
GDAL Library Header Files Error and Warningsin With Visual Studio 2019
我在 visual studio 2019 社区版中使用 GDAL,我在下面的官方网站上使用了示例代码,程序编译、运行和输出正常,但我得到了一个列表错误和警告,我不知道我是否应该忽略它们或对头文件进行一些更改,以前有人遇到过这样的问题吗?希望有人能给我一些建议,谢谢。
示例代码:
/*gdal_test*/
#include <iostream>
#include <gdal_priv.h>
#include <cpl_conv.h>
using namespace std;
int main()
{
const char* pszFile;
GDALAllRegister();
pszFile = "E:/190807/mosaic_data/S2_1_170215.tif";
GDALDataset* poDataset = (GDALDataset*)GDALOpen(pszFile, GA_ReadOnly);
GDALRasterBand* poBand = poDataset->GetRasterBand(1);
int xsize = poBand->GetXSize();
int ysize = poBand->GetYSize();
cout << xsize << endl;
cout << ysize << endl;
system("pause");
return 0;
}
错误列表主要包含这三个主要问题:
Error (active) E0065 expected a ';' gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\ogr_geometry.h 387
Error (active) E1455 member function declared with 'override' does not override a base class member gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\ogr_geometry.h 1139
Warning C26812 The enum type 'CPLErr' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\cpl_error.h 244
我应该更改头文件中的语法吗?会改变它影响什么吗?或者我应该忽略这些错误?
您声明您的程序,"compiles, runs and outputs fine," 所以,您看到的 错误 是由 [=29] 中的“Intellisense”工具报告的=].
要停止显示这些,转到 "Error List" window 和 select "Build Only" 选项:
C26812
警告消息可以按照我的.
中的描述禁用
我在 visual studio 2019 社区版中使用 GDAL,我在下面的官方网站上使用了示例代码,程序编译、运行和输出正常,但我得到了一个列表错误和警告,我不知道我是否应该忽略它们或对头文件进行一些更改,以前有人遇到过这样的问题吗?希望有人能给我一些建议,谢谢。 示例代码:
/*gdal_test*/
#include <iostream>
#include <gdal_priv.h>
#include <cpl_conv.h>
using namespace std;
int main()
{
const char* pszFile;
GDALAllRegister();
pszFile = "E:/190807/mosaic_data/S2_1_170215.tif";
GDALDataset* poDataset = (GDALDataset*)GDALOpen(pszFile, GA_ReadOnly);
GDALRasterBand* poBand = poDataset->GetRasterBand(1);
int xsize = poBand->GetXSize();
int ysize = poBand->GetYSize();
cout << xsize << endl;
cout << ysize << endl;
system("pause");
return 0;
}
错误列表主要包含这三个主要问题:
Error (active) E0065 expected a ';' gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\ogr_geometry.h 387
Error (active) E1455 member function declared with 'override' does not override a base class member gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\ogr_geometry.h 1139
Warning C26812 The enum type 'CPLErr' is unscoped. Prefer 'enum class' over 'enum' (Enum.3). gdaltest C:\MSVC_Library\GDAL\warmerda\bld\include C:\MSVC_Library\GDAL\warmerda\bld\include\cpl_error.h 244
我应该更改头文件中的语法吗?会改变它影响什么吗?或者我应该忽略这些错误?
您声明您的程序,"compiles, runs and outputs fine," 所以,您看到的 错误 是由 [=29] 中的“Intellisense”工具报告的=].
要停止显示这些,转到 "Error List" window 和 select "Build Only" 选项:
C26812
警告消息可以按照我的