我遇到了#include一个标题的情况,我遇到编译错误,需要我#including标题已包含在原始标题中。
标题包含以下内容:
#pragma once
#include <atlbase.h>
#include <atlcom.h>
#include "itestobj.h"
extern "C" ITestObj* WINAPI GetTestObj();
当我对代码进行编码时,我得到了一堆与ATL相关的编译错误,除了上面的标题之外,还在C ++文件中包含了atlbase.h
和atlcom.h
。
为什么通常不会包含这些标题?
答案 0 :(得分:0)
很可能,这些标头中至少有一个包含您在帖子中显示的文件。由于#pramga once
告诉编译器只包含一次,因此它会停止,并且您不会获得所有声明。