VS编译错误:error C2143: 语法错误 : 缺少“;”(在“类型”的前面)

Posted 柳鲲鹏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS编译错误:error C2143: 语法错误 : 缺少“;”(在“类型”的前面)相关的知识,希望对你有一定的参考价值。

  最直接的办法是修改代码。如果代码量少,当然可以。代码量多,那不可能的。能不能改成C++风格编译呢?

  • 改为cpp

太多。放弃。

  • 修改CMakeLists.txt(无效)

增加一句:set(CMAKE_CXX_STANDARD 17)

  • 修改cmake(无效)

add_definitions(-std=c++11)

  • cygwin(无效)

编译完成了,结果很奇怪。

  • 作为VC项目打开

可行。有可能会出现其他莫名其妙的错误。

  • 项目设置

有人说在项目,属性,C/C++,语言,能设置语言标准。VS2010/VS2012都没有,VS2015有?

  • 使用VS2015编译

未测试。

  • 其他编译成功的VS解决方案

吾是在编译freetype 2.11.0中遇到的。然后就想,freetype中好像有不少代码是这样的,之前编译也没问题。于是吾就找了以前的VS2010编译工程,确实没问题。将其配置复制过来。

以上是关于VS编译错误:error C2143: 语法错误 : 缺少“;”(在“类型”的前面)的主要内容,如果未能解决你的问题,请参考以下文章

错误 C2143 和错误 C2059 缺少“;”前 ””

MFC error C2143: 语法错误 : 缺少“;”(在“*”的前面)

error C2143: 语法错误 : 缺少“;”(在“&”的前面)

vs2012 MinGW编译ffmpeg 出现libavdevice/avdevice.c(38) : error C2059: 语法错误:“.”

error C2143: 语法错误 : 缺少“;”(在“return”的前面)是怎么回事?

Windows Visual C++ 2019 试图传递预处理器变量(Linux 中的 -D)错误 C2143:语法错误:缺少 ';'在“常数”之前