Bij het maken van een SDI applicatie in MS visual C++ worden een aantal bestanden automatisch gegenereerd. Onder deze: testDoc.cpp en testView.cpp en van beide ook de .h bestanden.
Mijn probleem is, in de testView moet ik een instantie van testDoc hebben en andersom ook. In een voorbeeld applicatie hebben ze hetzelfde probleem opgelost door de TestDoc.h te voorzien van een soort van 'class declaratie regel':
Als ik dit probeer in mijn applicatie, krijg ik de C2079 error:
m_testView uses undefined class 'CTestView'.
Msdn zegt over deze error: "The specified identifier was declared as a class, structure, or union that was not defined."
Die error krijg ik op deze regel:
Heeft iemand een idee hoe ik dit oplos?
Iemand heeft me al aangeraden om aan het begin van de .h files: #ifndef, #define en onderaan #endif te zetten, maar deze regels code zet ms vc++ zelf al om de .h files heen..
Mijn probleem is, in de testView moet ik een instantie van testDoc hebben en andersom ook. In een voorbeeld applicatie hebben ze hetzelfde probleem opgelost door de TestDoc.h te voorzien van een soort van 'class declaratie regel':
code:
1
2
3
4
5
6
7
8
9
10
11
12
| //TestDoc.h
class CTestView;
classCTestDoc: public CDocument{
protected:
CTestDoc();
DECLARE_DYNCREATE(CTestDoc)
public:
CTestView m_testView;
virtual ~CTestDoc();
.... |
Als ik dit probeer in mijn applicatie, krijg ik de C2079 error:
m_testView uses undefined class 'CTestView'.
Msdn zegt over deze error: "The specified identifier was declared as a class, structure, or union that was not defined."
Die error krijg ik op deze regel:
code:
1
| CTestView m_testView |
Heeft iemand een idee hoe ik dit oplos?
Iemand heeft me al aangeraden om aan het begin van de .h files: #ifndef, #define en onderaan #endif te zetten, maar deze regels code zet ms vc++ zelf al om de .h files heen..
Ik zeg maar zo, ik zeg maar nix. dan zeg ik al veel te veel.