頭文件包含順序問題

錯誤程序:

#include <xnamath.h>
#include <windows.h>
#include <iostream>
using namespace std;

int main() {
	return 0;
}


該程序在VS2010中編譯會產生251個錯誤。

分析:

xnamath.h頭文件中用到了FLOAT數據類型,該類型在windef.h中定義,而windows.h中包含了windef.h,但是包含的順序導致了xnamath.h中無法識別FLOAT類型,將包含順序反過來就對了。

#include <windows.h>
#include <xnamath.h>
#include <iostream>
using namespace std;

int main() {
	return 0;
}

 

該錯誤以前從沒遇到過,也花了近一個小時才找到錯誤。雖然是小BUD但是值得注意。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章