005
14.08.2006, 13:25 Uhr
ao
(Operator)
|
Zitat von FunnyDingo: |
Warum include ich raum.h in der benutzer.cpp und nicht in der benutzer.h?
|
Weil in benutzer.cpp die Bestandteile des Raums (->Memberfunktionen) verwendet werden, und dafür muss bekannt sein, welche public-Member es gibt. Du musst also die Deklaration class raum { .... }; bekannt machen, wobei das, was zwischen den Klammern steht, wichtig ist. Du erreichst das durch #include "raum.h", was genauso wirkt, als hättest du den Inhalt des Files dorthin kopiert, wo die #include-Anweisung steht.
In benutzer.h (Definition der Klasse benutzer) wird festgelegt, dass benutzer eine Beziehung zu raum-Instanzen hat. Dazu muss nur der Klassenname raum eingeführt werden. Über Innenleben und Schnittstelle der Klasse (also das Zeug zwischen den Klammern) braucht man hier noch nichts zu wissen.
ao |