本文主要是介绍pcl\io\pcd_io.h(369): error C2589: “(”:“::”右边的非法标记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
pcl\io\pcd_io.h(369): error C2589: “(”:“::”右边的非法标记
问题
利用pcl库中的#include <pcl/io/pcd_io.h>库写入PCD文件,出现如下报错信息:
f:\pcl 1.9.0\include\pcl-1.9\pcl\point_traits.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>c:\users\new\desktop\jhtofcam_c0019 v1.0.00 20201118\jhtofcam_c0019 v1.0.00 20201118\include\jhtofcam.h(32): warning C4190: “getTofLibVersion”有指定的 C 链接,但返回了与 C 不兼容的 UDT“ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>>>”
1>f:\vs2017\vc\tools\msvc\14.16.27023\atlmfc\include\afxstr.h(89): note: 参见“ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>>>”的声明
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\pcd_io.h(369): warning C4003: 类函数宏的调用“max”参数不足
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\pcd_io.h(369): error C2589: “(”:“::”右边的非法标记
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\pcd_io.h(369): error C2059: 语法错误:“)”
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(89): warning C4003: 类函数宏的调用“max”参数不足
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(101): warning C4003: 类函数宏的调用“max”参数不足
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(89): error C2589: “(”:“::”右边的非法标记
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(89): note: 此诊断出现在编译器生成的函数“std::string pcl::PCDWriter::generateHeader(const pcl::PointCloud &,const int)”中
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(302): warning C4003: 类函数宏的调用“max”参数不足
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(305): warning C4003: 类函数宏的调用“max”参数不足
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(302): error C2589: “(”:“::”右边的非法标记
1>f:\pcl 1.9.0\include\pcl-1.9\pcl\io\impl\pcd_io.hpp(302): note: 此诊断出现在编译器生成的函数“int pcl::PCDWriter::writeBinaryCompressed(const std::string &,const pcl::PointCloud &)”中
解决方案
打开工程项目的属性页,在C/C++的预处理器中的预处理定义加入一句:
NOMINMAX
这篇关于pcl\io\pcd_io.h(369): error C2589: “(”:“::”右边的非法标记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!