C ++头文件给出了Windows不兼容性错误

时间:2017-01-25 02:57:02

标签: c++ gcc

尝试创建.h文件以存储类时,如下例所示:

#ifndef TRIANGLE64_H
#define TRIANGLE64_H

class Triangle64{
public:

 Triangle64();

 double getArea();

 void destroy(); //Frees the allocated memory

private:

//Variables reflecting the properties of the triangle
 double Base;
 int N_ulps;
 double s;
 double Area;
};

#endif

我收到了错误:

  

此版本的C:\ Users \ ezio1 \ AppData \ Local \ Temp \ Triangle64.exe与您正在运行的Windows版本不兼容。检查计算机的系统信息,然后与软件发行商联系。

这似乎很奇怪,因为我没有尝试从此代码生成.exe文件(为了完整性,我也使用gcc编译器运行Windows 10。)

我也尝试忽略错误消息,并尝试从标题创建一个类文件:

#include "Triangle64.h"

//Constructor
Triangle64::Triangle64(){

}

但是,这次代码甚至没有运行,我返回时出现错误消息

  

C:/ MinGW的/ bin中/../ LIB / GCC /的mingw32 / 5.3.0 /../../../ libmingw32.a(main.o),此:( text.startup + 0XA0):未定义的引用`WinMain @ 16'   collect2.exe:错误:ld返回1退出状态

这可能是我安装编译器时出现问题的结果,还是可能与操作系统有关?

1 个答案:

答案 0 :(得分:-1)

根据第二条错误消息,您似乎正在构建一个16位应用程序。由于x86架构的限制,64位版本的Windows无法运行16位可执行文件。

更改编译器设置以构建32位或64位代码。