[gelöst] using namespace std; in if Anweisung
-
Hi, ich bin neu hier und versuche ein wenig hinter die Feinheiten von C++ zu steigen.
Thema: using namespace std;
Funktion funktioniert
void berechne(int n) { std::cout << "Teiler von " << n << " sind:\n"; for(int teiler=1; teiler <= n; ++teiler) { using namespace std; if(n % teiler == 0) cout << teiler << ", "; } std::cout << std::endl; }
Funktion funktioniert nicht
void berechne(int n) { std::cout << "Teiler von " << n << " sind:\n"; for(int teiler=1; teiler <= n; ++teiler) { if(n % teiler == 0) using namespace std; cout << teiler << ", "; } std::cout << std::endl; }
Fehlermeldung zum nicht funktionierenden Beispiel
modern101.cpp: In function ‘void berechne(int)’: modern101.cpp:56:13: error: ‘cout’ was not declared in this scope
Diese Aufgabe dient dem Verständnis von C++, vor allem interessiert mich warum dieses "using namespace std" innerhalb der for Schleife kein Problem darstellt, während es in der if Anweisung, anscheinend nicht beachtet wird.
-
Ich empfehle dir, nach if immer einen Block zu machen, auch wenn nur eine Anweisung kommt.
-
Danke, Code Blind, jetzt habe ich es auch gesehen. So einfach kann es manchmal sein.