前言
这也是个常见错误了吧,字面意思就是一个头文件不要重复引用。
atlmfc\include\afxv_w32.h(16): fatal error C1189: #error: WINDOWS.H already included. MFC apps must not #include <Windows.h>
我在编写一个日志类文件时,用到了CStdioFile,而CStdioFile在<afx.h>里定义的,因此顺手在这个日志类的cpp里写了#include <afx.h>
,编译时就报了这个错。
解决方案
百度了一下有挺多,我这边就说一下我的方案。
很简单,把#include <afx.h>
放在预编译头文件(pch.h或stdafx.h)里,然后包含预编译头文件就行了。话说我写这个日志类的时候,竟然忘记包含预编译头文件了!