C++中,头文件定义的类,在另一个头文件中不需要包含就可以使用?
先给两个头文件:
"Cheery.h" 中定义一个类
#pragma once
#include <iostream>
class Cherry
{
public:
Cherry() {}
virtual void printType()
{
std::cout << "I am a Cherry" << std::endl;
}
};
"CherryTree.h"中引用了上面的类
#pragma once
class CherryTree
{
public:
CherryTree() {}
virtual Cherry* pick()
{
return new Cherry();
}
};
但"CherryTree.h"在并没有#include“Cherry.h” ,却可以编译运行成功。为什么它知道Cherry是个类呢???