STL-Algorithmen
-
mikey schrieb:
CStoll schrieb:
Ach, mit etwas Übung ist das kein Problem - und zur Not mußt du mal durchgehen und die verwendeten Variablen umtaufen.
Das habe ich schon vermutet, dass du einer von der ganz harten Sorte bist.
Ich habe mir mal den Code der std::fstream Klasse etwas genauer angeguckt. Dabei habe ich aber nur einen Bruchteil verstanden, da der Code wirklich total unlesbar und verstrikt ist.Im Normalfall reicht es mir aus zu wissen, wie man einen Algorithmus verwenden kann
Aber ansonsten hilft es vermutlich zum Verständnis, wenn man die grundlegenden Konzepte verstanden hat (z.B. bei den IOStreams die Arbeitsteilung zwischen Stream (Steuerung), Stream-Buffer (Datenbeschaffung) und Locale (Formatierung)).
-
mikey schrieb:
Ich habe mir mal den Code der std::fstream Klasse etwas genauer angeguckt.
Wo des sein ???
Die Streams sind nicht Bestandteil der STL, also sollten sie doch auch nicht als offener Code irgendwo rumstehen ?
-
KasF! Die Leute sagen immer zur Standardlib STL, ich habs fast aufgegeben immer wieder anzumerken. Aber ein guter Einwand von dir! Die STL kennt keine Strings und auch kein I/O-Streams. Aber das werden wir wohl nie in deren Köpfe ändern. Man steckt halt nicht drin.

-
unter http://www.cplusplus.com/reference/algorithm/ steht bei den algorithmen immer ein Codeschnipsel mit der Anmerkung "the behaviour is equivalent to..."
Da kann man recht gut sehn wie die Algorithmen funktionieren - und zwar mit lesbarem Code
-
Artchi schrieb:
Du glaubst doch nicht, das die das so programmiert haben? Das haben die nachträglich für den Vertrieb mit einem Deflater oder sowas unkenntlich gemacht.
Natürlich glaube ich es nicht, deswegen war ich auch so skeptisch. Den Begriff 'Deflater' lese ich zum ersten mal; wusste nichtmal, dass es sowas gibt.
KasF schrieb:
Die Streams sind nicht Bestandteil der STL
Hab ich auch garnicht gesagt, mich aber vielleicht falsch ausgedrückt. Ich habe mir die istream-Header angeguckt, dort sind auch einige Templateimplementierungen vorhanden, die implizit was mit IO-Streams zu tun haben. (setstate(), tellg()...)
Artchi schrieb:
ich habs fast aufgegeben immer wieder anzumerken
Dann darf ich dich an dieser Stelle beruhigen. Du musst es nicht anmerken.

-
Danke an alle, besonders an dich pumuckl. Genau sowas habe ich gesucht.
-
pumuckl schrieb:
unter http://www.cplusplus.com/reference/algorithm/ steht bei den algorithmen immer ein Codeschnipsel mit der Anmerkung "the behaviour is equivalent to..."
Da kann man recht gut sehn wie die Algorithmen funktionieren - und zwar mit lesbarem Code
Nein, kann man nicht. Da steht nicht "the code is equivalent to", sondern "the behaviour".
-
@finix
also mir taugts was. und darum gings in dem thread ja.
-
mikey schrieb:
Hab ich auch garnicht gesagt, mich aber vielleicht falsch ausgedrückt. Ich habe mir die istream-Header angeguckt, dort sind auch einige Templateimplementierungen vorhanden, die implizit was mit IO-Streams zu tun haben. (setstate(), tellg()...)
Habe ja auch gar nicht explzit erwähnt, dass du das gesagt hast

Aber dann ist ja alles gut
-
finix schrieb:
pumuckl schrieb:
unter http://www.cplusplus.com/reference/algorithm/ steht bei den algorithmen immer ein Codeschnipsel mit der Anmerkung "the behaviour is equivalent to..."
Da kann man recht gut sehn wie die Algorithmen funktionieren - und zwar mit lesbarem Code
Nein, kann man nicht. Da steht nicht "the code is equivalent to", sondern "the behaviour".
Gut, ich korrigiere mich: man kann zwar nicht unbedingt sehn wie sie intern wirklich funktionieren, aber man sieht wie sie sich verhalten. Was ja das eigentlich wichtige ist. Wie die implementer der STL meines Compilers die Probleme nu genau gelöst haben, kann mir erstmal egal sein wenn ich nicht eigene Algorithmen bauen muss
