Почему не виден класс C...Doc?
файл Multiplication.h
class CMultiplication
{
public:
void CommunicationWDoc(CMathematicsDoc * pComm); // связь с классом CMathematicsDoc
...
}
файл Multiplication.cpp
#include "MathematicsDoc.h"
...
void CMultiplication::CommunicationWDoc(CMathematicsDoc * pComm)
{
...
}
**************************************************
файл MathematicsDoc.cpp
void CMathematicsDoc::SetTaskNumber(int number) // установка значений в классе документа
{
...
}
При компиляции выдается сообщение:
Compiling...
Multiplication.cpp
d:\...\multiplication.h(15) : error C2061: syntax error : identifier 'CMathematicsDoc'
D:\...\Multiplication.cpp(91) : error C2511: 'CommunicationWDoc' : overloaded member function 'void (class CMathematicsDoc *)' not found in 'CMultiplication'
d:\...\multiplication.h(13) : see declaration of 'CMultiplication' (2-я ошибка возникает из-за первой)
Такое ощущение, что класс CMathematicsDoc просто не виден (тип CMathematicsDoc нельзя задать). Пробовал указывать для pComm тип int - все компилируется. Объясните, почему?
Спасибо всем, кто ответит!
Мне кажется здесь дело вот в чем.
Файл Multiplication.cpp
содержит:
X-Имя файла где нашодится CWinApp или от него производный CMyApp.
#include "StdAfx.h"
#include "X.h"
#include "MathematicsDoc.h"
А во всех остальных *.cpp файлах проекта, должно быть так:
#include "StdAfx.h"
#include "X.h"
#include "MathematicsDoc.h"
#include "Multiplication.h"
Проверьте.
</BLOCKQUOTE></FONT></TD></TR><TR><TD><HR></TD></TR></TABLE>