Beispiel 5: person1.h

21.11.2016 02:30 Uhr
#include <iostream>

using namespace std;
#include "person1.h"


int main()
{
struct person person = { 0 } ;
char sprache;

cout << "Wählen Sie Ihre Sprache:" << endl;
cout << "e = English" << endl;
cout << "d = deutsch" << endl;
cout << "   Ihre Wahl:";
cin >> sprache;

cout << "Sie kommen aus:" << endl;
cout << "w = Westeuropa" << endl;
cout << "a = Amerika" << endl;
cout << "r = Rußland" << endl;
cout << "o = Österreich" << endl;
cout << "   Ihre Herkunft:";
cin >> person.herkunft;

switch(sprache)
   {
case 'e':
   askEnglish(&person);
   break;
case 'd':
   frageDeutsch(&person);
   break;
default:
   cout << "I do not know your language / Maybe you know English?";
   askEnglish(&person);
   sprache='e';
   break;
   }

switch(sprache)
   {
case 'e':
   greetEnglish(&person);
   break;
case 'd':
   gruesseDeutsch(&person);
   break;
   }
}

Beispiel 5: Erläuterungen I

#include <iostream>

using namespace std;
#include "person1.h"

Genauso, wie Deklarationen von Strukturtypen u.ä. aus einem
Programm ausgelagert werden können, kann auch der eigentliche Quellcode auf
zwei oder mehrere Dateien verteilt werden. ALLE Dateien mit Quellcode erhalten
dabei die gleiche Extension.

In diesem Beispiel wurde der Quellcode auf zwei Dateien aufgeteilt: Die sie
gerade lesen, die das eigentliche Programm enthält, das den Ablauf der
Interaktion mit dem Benutzer regelt.

In einer  weiteren Datei wurden die Funktionen
ausgelagert, die sich mit der Behandlung der logischen Einheit "person"
beschäftigen.


int main()
{
struct person person = { 0 } ;
char sprache;

cout << "Wählen Sie Ihre Sprache:" << endl;
cout << "e = English" << endl;
cout << "d = deutsch" << endl;
cout << "   Ihre Wahl:";
cin >> sprache;

cout << "Sie kommen aus:" << endl;
cout << "w = Westeuropa" << endl;
cout << "a = Amerika" << endl;
cout << "r = Rußland" << endl;
cout << "o = Österreich" << endl;
cout << "   Ihre Herkunft:";
cin >> person.herkunft;

switch(sprache)
   {
case 'e':
   askEnglish(&person);
   break;
case 'd':
   frageDeutsch(&person);
   break;
default:
   cout << "I do not know your language / Maybe you know English?";
   askEnglish(&person);
   sprache='e';
   break;
   }

switch(sprache)
   {
case 'e':
   greetEnglish(&person);
   break;
case 'd':
   gruesseDeutsch(&person);
   break;
   }
}

Beispiel 5: Erläuterungen zur Header-Datei

struct person 
   {
   char vorname[100];
   char nachname[100];
   char patronym[100];
   char middlename[100];
   char titel[100];
   char herkunft;
   } ;

void askEnglish(struct person *partner);
void frageDeutsch(struct person *partner);
void greetEnglish(struct person *partner);
void gruesseDeutsch(struct person *partner);

Zu der Deklaration der zu verwendenden Struktur sind nunmehr
auch die Deklarationen der sie verwendenden Funktionen getreten.

Anhang: example5.zip

Schlagwörter: