sources:
M06_1.cpp (390 bytes)
MCashOffice.cpp (2.0k)
MCashOffice.h (1.4k)
MRoom.cpp (1.5k)
MRoom.h (1.1k)
PrimitiveTypes.h (421 bytes)


website:
more info here
studies/bauelemente/Softwarebauelemente-CodeM6-1/MRoom.cpp
download file

  1 ///////////////////////////////////////////////////////////
  2 // Softwarebauelemente I, Aufgabe M6.1
  3 //
  4 // author: Stephan Brumme
  5 // last changes: November 23, 2000
  6
  7
  8 // import cout to display some data
  9 #include <iostream>
 10 #include "MRoom.h"
 11
 12 // open std namespace
 13 using namespace std;
 14
 15
 16
 17 // define the namespace Room
 18
 19 // Initializes the TRoom structure
 20 void MRoom::Init(TRoom &roo, Ordinal nor, Ordinal ar)
 21 {
 22     roo.NumberOfRooms = nor;
 23     roo.Area = ar;
 24 }
 25
 26
 27 // Compares two exemplars
 28 // returns "true" if attributes of both are equal; "false" otherwise
 29 Boolean MRoom::EqualValue(TRoom roo1, TRoom roo2)
 30 {
 31     return ((roo1.Area == roo2.Area) &&
 32             (roo1.NumberOfRooms = roo2.NumberOfRooms))
;
 33 }
 34
 35
 36 // Copies the attributes of roo2
 37 // returns "true" if successful, "false" if no memory allocated
 38 Boolean MRoom::Copy(TRoom* roo1, TRoom roo2)
 39 {
 40     if ((roo1 == NULL) ||
 41         (EqualValue(*roo1, roo2)))

 42         return false;
 43
 44     roo1->Area = roo2.Area;
 45     roo1->NumberOfRooms = roo2.NumberOfRooms;
 46     return true;
 47 }
 48
 49
 50 // Returns the NumberOfRooms attribute
 51 Ordinal MRoom::GetNumberOfRooms(TRoom roo)
 52 {
 53     return roo.NumberOfRooms;
 54 }
 55
 56
 57 // Sets the NumberOfRooms attribute
 58 void MRoom::SetNumberOfRooms(TRoom &roo, Ordinal nor)
 59 {
 60     roo.NumberOfRooms = nor;
 61 }
 62
 63
 64 // Returns the Area attribute
 65 Ordinal MRoom::GetArea(TRoom roo)
 66 {
 67     return roo.Area;
 68 }
 69
 70
 71 // Displays the attributes
 72 void MRoom::Show(TRoom roo)
 73 {
 74     cout<<"Es sind "<<roo.NumberOfRooms<<" Raeume mit einer Flaeche von "<<roo.Area         <<"."<<endl;
 75 }
 76
 77 // end of namespace Room
 78
 79