我在A.h头文件有如下定义:
public:

    CChatDlg * GetCChatDlg (int nItem);
结果编译红色标记的这行代码时:出现如下错误
错误 1 error C2143: 语法错误 : 缺少“;”(在“*”的前面)
错误     2 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
错误 3 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
查询网上的一些资料,看了不少,也没适合的解决方法
大侠们有遇到这样的问题吗,如何解决呢

解决方案 »

  1.   

    CChatDlg的定义所在文件没有被include?
    两个头文件互相include了?
      

  2.   

    头文件没有包含进来吧,或者在前面加上一行class CChatDlg;
      

  3.   

    看看 这个GetCChatDlg 声明和实现有什么问题。 
      

  4.   

    A.h
    中的声明如下:
    CChatDlg * GetCChatDlg (int nItem);
    A.cpp
    实现如下:
    CChatDlg* A::GetCChatDlg (int nItem)
    {
    POSITION pos=m_PtrWebPageDlg.FindIndex(nItem);
    CChatDlg* pWebPageDlg=NULL;
    if (pos)
    {
    pWebPageDlg=(CChatDlg*)m_PtrWebPageDlg.GetAt(pos);
    }
    return pWebPageDlg;
    }
      

  5.   

    编译器不认识。你缺少了头文件吧。
    你在A.h中包含了CChatDlg的头文件了吗?
      

  6.   

    问题解决了,虽然编译报的错误在这行,文件包含错误导致了这个问题,老规矩散分!ThankS!