我有一个头文件有一些前向声明,但是当我将头文件包含在实现文件中时,它会包含在前面的前向声明的包含之后,并且会导致类似的错误。C++前向声明问题
error: using typedef-name ‘std::ifstream’ after ‘class’
/usr/include/c++/4.2.1/iosfwd:145: error: ‘std::ifstream’ has a previous declaration.
class ifstream;
class A
{
ifstream *inStream;
}
// End of A.h
#include <ifstream>
using std::ifstream;
#include "A.h"
// etc
什么是解决这个问题的标准?
在此先感谢。
你可以发布一些最小的代码? – Naveen 2010-06-03 04:48:06
您在类A的定义之后忘了';',对于初学者... – AnT 2010-06-03 05:00:41