Ich hab da mal ne Frage. Und zwar hab ich mir ein Buch über C++ gekauft und lese gerade gleichzeitig ein C/C++ Online-Kurs, so als nebenbei, zum tiefern Verständnis. Und ich wollte mal Fragen, warum man bei dem einen Kurs #include <iostream> nimmt und bei dem andern <iostream.h>? Ist die Header-Datei vielleicht nur für die Sprache C gedacht?
Achja. Außerdem wird im C++ Buch nicht ausreichend oder so ziemlich gar nicht erklärt warum man using namespace std; vor dem Programm einfügt. Das wurde auch im Onlinekurs ausgelassen, also man braucht es im Programm gar nicht. Nur wenn ich die Datei <iostream.h> auf <iostream> umwandle, streikt er mir. Nur wenn ich dann using namespace std; einfüge gehts wieder. Ich denke, dass das eine C und das andere C++ ist, oder?
Hallo, nein, es ist beides C++. Der veraltete Header <iostream.h> verwendet (noch) keinen Namespace. Dei dem neuen <iostream> ist, wie bei den anderen neueren Headern der Standardbibliothek, alles in den Namespace std eingebunden un daher brauchst Du die using-Direktive (oder mußt jeweils std::cout udw. schreiben). <iostream.h> ist jedenfalls veraltet.
oder du setzt für alle Funktionen ein Alias: typedef std::cout cout; -- perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
@(un)wissender: Ich habe in diesem Forum schon mitgelesen, wenn ich von der Mammutjagd nach Hause kam. @Reyx: Für diesen Vorschlag gehörst Du 256 Postings zurückgestuft. Aber gehen würde es.