我有一個頭文件有一些前向聲明,但是當我將頭文件包含在實現文件中時,它會包含在前面的前向聲明的包含之後,並且會導致類似的錯誤。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