Hallo,
ich glaube ich habe ein Verständnisproblem bei Listing 4.7.
Ich hoffe ihr könnt mir helfen.
Hier die Listing:
Die betreffenden Zeilen habe ich mit Nummern versehen.
// Listing 4.7
// Bereichsabfrage
#include <iostream>
using namespace std;
bool testeBereich (int Position, int Min, int Max); // Prototyp
// Hauptprogramm
//
int main ()
{
// Variablen
//
17: int Minimum = 0;
18: int Maximum = 800;
19: int xPosition;
cout << "Spielerposition auf der x-Achse: ";
22: cin >> xPosition;
24: if (testeBereich (xPosition, Minimum, Maximum) == true)
cout << "Spieler ist noch auf dem Bildschirm" << endl;
else
cout << "Spieler ist ausserhalb des Bildschirms" << endl;
return 0;
}
// testeBereich
//
34: bool testeBereich (int Position, int Min, int Max)
{
36: if ((Position >= Min) && (Position < Max))
return true;
else
return false;
}
So wie ich das Verstanden habe, übergeben wir in Zeile 24
die Variablen Minimum, Maximum und xPosition (Zeile 17, 18, 19) der Funktion., damit die Funktion mit diesen
Variablen rechnen kann.
Jedoch übergeben wir in Zeile 34 die Variablen Position, Min
und Max, und rechnen mit diesen Werten in Zeile 36.
Warum rechnet man in Zeile 36 nicht mit den Variablen
Minimum, Maximum und xPosition, sondern mit den Variablen aus Zeile 34, und
woher weiß der Compiler mit welchen Werten er rechnen muss, da wir ja nur in
Zeile 17, 18 und 22 die Variablen definiert haben (ich dachte man muss auf die
Schreibung achten)?
Ich hoffe ihr könnt mir helfen
Mfg.