• error C2144: 语法错误:“int”的前面应有“;”


    error C2144: 语法错误:“int”的前面应有“;”

    C++- error C2144 syntax error : ‘int’ should be preceded by ‘;’

    注:我使用VS2010时,遇到的问题

    解决办法

    在某个.h文件里你自定义的某个类最后的“;”,你一定使用的是中文输入法下的“”,将它换为英文输入法,输入”;“。问题解决。

    注意:
    中文输入法下的“”和英文输入法下的“;”实在是太像了。

    实例

    错误程序

    main.cpp

    #include <iostream>
    #include "helloworld.h"
    
    int main(void)
    {
        HelloWorld hello;
        hello.say();
        while(1){}
        return 0;
    }
    

    helloworld.h

    #ifndef __HELLOWORLD_H_
    #define __HELLOWORLD_H_
    
    class HelloWorld{
    public:
        HelloWorld(){}
    
        void say(){
            std::cout << "Hello World!" << std::endl;
        }
    };
    #endif
    

    编译失败

    1>  main.cpp : error C2144: 语法错误:“int”的前面应有“;”
    1>
    1>生成失败。

    修改后正确的程序

    修改helloworld.h

    #ifndef __HELLOWORLD_H_
    #define __HELLOWORLD_H_
    
    class HelloWorld{
    public:
        HelloWorld(){}
    
        void say(){
            std::cout << "Hello World!" << std::endl;
        }
    };
    #endif
    

    编译成功

    1>生成成功。

    注意:

    另一种解决办法,(但是我不推荐使用main.cppmain()函数返回变量int前面加上一个“;”。也可以解决问题。

    
    #include <iostream>
    
    
    #include "helloworld.h" 
    
    ;int main(void)
    {
        HelloWorld hello;
        hello.say();
        while(1){}
        return 0;
    }

    参考网站:
    1. http://stackoverflow.com/questions/11808432/c-error-c2144-syntax-error-int-should-be-preceded-by

  • 相关阅读:
    将一个float型转化为内存存储格式的步骤
    判断是否是中文、英文字符串
    打开文件对话框
    线性表之四,受限的线性表,队列
    线性表之三,受限的线性表,栈
    数据结构
    List
    SamplesHashtable
    Exception
    maven指定本地仓库
  • 原文地址:https://www.cnblogs.com/aobosir/p/5928670.html
Copyright © 2020-2023  润新知