Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat von »"koschka"«
Es schadet nie auf Typkonverterungen zu achten. Besonders bei solchen Fällen, so gewöhnt man sich dran und macht nicht weitere (logischen) Fehler.
Zitat von »"koschka"«
Ich glaube wir brauchen uns deshalb nicht zu streiten was muss und was unter Umständen kann. Mit der Variante unten ist es eineindeutig klar und genau darum gings mir.
C-/C++-Quelltext |
|
1 2 3 4 5 6 |
void Steigerung (int Strengh, int Agility) { Strengh = (int)(Strengh/10) + Strengh; Agility = (int)(Agility/10) + Agility; } |
Anonymous
unregistriert
Zitat von »"koschka"«
@Kalo
@Pointer.
Mit Pointern kann man noch ne ganze menge anderer Sachen noch machen (Thema dynamische/rekursive Datentypen), die man nicht mit Referenzen machen kann. Referenzen braucht man eigentlich gar nicht, aber es macht sich vieles mit ihnen einfacher.
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
//... int main () { int Variable; Funktion (Variable); // Hier sieht man nicht sofort, dass der Wert von der Funktion verändert werden kann Funktion2 (&Variable); // Hier schon return 0; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 |
// Funktion: int foo(int& i); // Aufruf: foo(1); // Fehler ////////////////////////////////// int foo(const int& i); foo(1); // Es wird eine Referenz auf die Konstante 1 erstellt. |
Werbeanzeige