| Autor |
Nachricht |
DomG.
Mitglied
Benutzerprofil
Anmeldungsdatum: 01.08.2012
Beiträge: 2
|
DomG. Mitglied
14:32:29 01.08.2012 Titel: |
Verständnissfrage |
Zitieren |
Hi,
ich bin ein ziemlicher Neueinsteiger in C++ und versuche es über die Sommerferiern anzueignen (einen groben Überblick zu bekommen).
Lernen tue ich mit dem Buch "C++ für Spieleprogrammierer" von heiko KALISTA.
In dem Buch gibt es viele Beispiele die anschließend erklärt werden es gibt aber eine Sache, die ich nicht verstanden habe:
der Beispielcode:
...
bool testeBereich (int Position, int Min, int Max);
int main ()
{
int Minimum = 0;
int Maximum = 800;
int xPosition;
cout << "Spielerposition auf der x-Achse: ";
cin >> xPosition;
if (testeBereich (xPosition, Minimum, Maximum) == true)
cout << ..............................
else
cout << ..........................
return 0;
}
bool testeBereich (int Position, int Min, int Max)
{
if ((Position >= Min) && (Position < Max))
return true;
else
return false;
}
Ich verstehe einfach nicht wiso in der main-Funktion xPosition, Minimum und Maximum steht statt Position, Min und Max |
|
|
|
 |
LordTerra
Mitglied
Benutzerprofil
Anmeldungsdatum: 22.08.2007
Beiträge: 272
|
LordTerra Mitglied
15:24:47 01.08.2012 Titel: |
|
Zitieren |
int Position, int Min, int Max <- sind deklarationen der funktion: testeBereich
wie ich diese funktion ausrufe ist egal (also welche variablen ich übergebe, solange es die richtige anzahl und der richtige typ ist .
heist ich könnte in den aufruf im main auch schreiben:
testeBereich(1,2,3);
oder aber:
int a=1;
int b=2;
int c=3;
testeBereich(a,b,c);
solange die anzahl der argumente (3 x int) und der richtige typ angegeben ist
ist es egal wie die variable heisst die ich übergebe.
a , b , c wird beim aufruf an die variablen: int Position, int Min, int Max übergeben.
so als ob ich schreiben würde:
int Position = a;
int Min = b;
int Max = c;
mfg LT |
|
|
|
 |
_matze
Mitglied
Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 10650
|
_matze Mitglied
16:12:53 01.08.2012 Titel: |
|
Zitieren |
Und ergänzend:
Variablen können den gleichen Namen haben, solange sie sich nicht im gleichen Scope (Gültigkeitsbereich) befinden:
| C++: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | void Foo(int min) {
min=5; //hier ist min eine funktionslokale Variable, die nur zufällig den gleichen Namen trägt.
//Ihr wird der Wert 5 zugewiesen, aber unten in deiner main-Funktion ändert sich nichts an der Variable min
}
int main() {
int min=0; //diese Variable min ist etwas völlig anderes als die da oben in Foo()!
Foo(min);
{ //hier wird ein neuer Scope aufgemacht
int min=4; //diese dritte Variable namens min hat ebenfalls nichts mit den anderen beiden zu tun
}
std::cout << min; //hier wird 0 ausgegeben, nicht 4 oder 5
} | | |
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
|
|
 |
C++ Forumbot
Forumbot
Benutzerprofil
Anmeldungsdatum: 29.02.2004
Beiträge: 17163
|
C++ Forumbot Forumbot
08:23:05 02.08.2012 Titel: |
|
Zitieren |
|
 |
DomG.
Mitglied
Benutzerprofil
Anmeldungsdatum: 01.08.2012
Beiträge: 2
|
DomG. Mitglied
12:01:09 03.08.2012 Titel: |
|
Zitieren |
Danke für eure Antworten, jetzt hab ich es verstanden |
|
|
|
 |
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|
|