zoukankan      html  css  js  c++  java
  • 令人费解的编译错误:error C2144: syntax error : 'double' should be preceded by ';' 和 error C3646: ';' : unknown override specifier

    今天编程莫名其妙的出现了以下两个编译错误:

    1>e:\日常学习\plsa_nmf\plsa_nmf\sutil.h(10): error C3646: ';' : unknown override specifier
    1>e:\日常学习\plsa_nmf\plsa_nmf\sutil.h(10): error C2144: syntax error : 'void' should be preceded by ';'

    或者显示成

    1>e:\日常学习\plsa_nmf\plsa_nmf\query.cpp(17): error C3646: ';' : unknown override specifier
    1>e:\日常学习\plsa_nmf\plsa_nmf\query.cpp(17): error C2144: syntax error : 'double' should be preceded by ';'

    它指示文件query.cpp的17行有问题,在至于后面的编译错误其实是第一个编译错误引起的。

    在vs2010编译环境下,不仔细看,很难发现输出编译信息中的';'和';'的区别。

    另外,就算看出来了,你在编译器指示的文件query.cpp中也找不到';',这个分号不知道是在哪里出现的,通过查看编译信息,我们

    可知,这个错误是在编译query.cpp时出现的,其实,最简单的解决方法就是,对整个项目进行查询,看看那些地方出现了';',这样

    可以很快解决问题。

    当你没有遇到过或者不记得这种错误的时候,估计你会苦恼一会儿,其实类似这种错误,都是因为字符的格式不对引起的。以后编程要

    多加注意。另外,不要太相信编译器,编译器上的提示仅仅可以作为参考,像这个问题上,编译器指示的文件就不是问题出现的那个文件,

    其实问题出现的那个文件是在query.h中。

  • 相关阅读:
    1009 Product of Polynomials (25分)
    VS code 调试C++
    1065 A+B and C (64bit) (20分)
    UML与数据库应用系统
    语句(switch,异常,NDEBUG,assert)
    1046 Shortest Distance (20分)
    1042 Shuffling Machine (20分)
    模块和包
    闭包&装饰器
    迭代器、生成器
  • 原文地址:https://www.cnblogs.com/wintergrass/p/2269165.html
Copyright © 2011-2022 走看看