wäre es am besten globale Variablen zu verwenden, wie zum Beispiel:Verwenden Sie globale Variablen oder mehrere Parameter?
int bumNum;
int extraNum;
bool isIt;
void setup()
{
std::cin >> bumNum;
std::cin >> extraNum;
isIt= false;
}
void anotherFunc()
{
//do something with the global variables
}
int main()
{
setup();
anotherFunc();
return 0;
}
oder lokalen Variablen wie:
void setup(int& bumNum, int& extraNum, bool& isIt)
{
std::cin >> bumNum;
std::cin >> extraNum;
isIt= false;
}
void anotherFunc(int& bumNum, int& extraNum, bool& isIt)
{
//do something with the global variables
}
int main()
{
int bumNum;
int extraNum;
bool isIt;
setup(bumNum, extraNum, isIt);
anotherFunc();
return 0;
}
Die erste Option weniger tippen auf die andere Option im Vergleich ist. Die Sache ist, dass globale Variablen nicht wirklich als ein Freund betrachtet werden:/Oh, und es gibt mehr Initialisierungen in der zweiten Option.
Hast du das wirklich fragen? Natürlich ist die Verwendung von Parametern besser, obwohl Sie sie vermutlich in eine Struktur oder Klasse einpacken möchten. Und "es gibt mehr Initialisierungen in der zweiten Option" - nein, es gibt keine .. –
Globale Variablen eine fast * nie * eine gute Idee. Sicher, jede Regel hat Ausnahmen, aber die Regel "verwende keine Globalen" hat * sehr * wenige - und wenn du sie brechen musst, dann weißt du verdammt gut warum und hast einen * sehr * guten Grund (und nein; " Bequemlichkeit "zählt nicht". –
@JesperJuhl Also wäre es wirklich besser, so viel mehr für das gleiche Ergebnis einzugeben? :/ – Dip