Wer was kann wird belohnt !!!
-
Ich mach mal eben meinen Spambot an. Macht jemand mit?
-
Wenn das ernst gemeint ist und ihr tatsächlich Interesse wecken wollt, dann solltet ihr zumindest einen Hauch an Information darüber rausrücken, worum es überhaupt geht...
-
Sone schrieb:
camper schrieb:
Ich bin immer wieder erstaunt, wieviel Text man aufs Nichts-Sagen verschwenden kann.
Sag mir, falls mein Troll-Detektor schon wieder veraltet spielt, aber ....
Schon richtig, aber soweit muss man gar nicht lesen.
Wir, ein junges, dynamisches Team sind auf der suche nach einem geeigneten Kandidaten für unsere patentierte Entwicklung,
Nach Patentierte Entwicklung gibt es nur 3. Möglichkeiten:
1. es ist eine platte Lüge, oder
2. das Patentiert gehört ihnen nicht und es existiert auch keine Lizenz - da will man nichts mit ihnen zu tun haben, oder
3. sie haben keinen Grund, nicht genau über das Projekt zu reden, das wird aber nicht getan; ergo 1 oder 2 == Troll
-
Dieser Thread wurde von Moderator/in volkard aus dem Forum C++ (auch C++0x und C++11) in das Forum Projekte verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
C-Dog-System schrieb:
Hallo Liebe C++ Profis
Wir, ein junges, dynamisches Team sind auf der suche nach einem geeigneten Kandidaten für unsere patentierte Entwicklung, doch erlauben Sie mir, uns erst näher vorzustellen
Hinter dem oben erwähnten „wir“ verbirgt sich ein Zusammenschluss engagierter Personen aus unterschiedlichsten Fachrichtungen die sich zusammengefunden haben, um zwei sehr interessante Themenstellung, enger miteinander zu verbinden. Es handelt sich dabei um Studenten der Universitäten Stuttgart Vaihingen sowie Hohenheim, aus den Sektionen erneuerbare Energien und Webdesign, Vertriebsmitarbeiter mit weltweitem Netzwerkhintergrund und erfahrene Techniker auf dem Gebiet der Elektro- und Sensortechnik. Eine langjährige Führungskraft aus dem Bereich IT, Angestellte aus dem Rechtsbereich sowie aus dem Marketing runden unseren Kreis ab. Schon allein durch die vielfältigen Fachrichtungen die sich von Anfang an für diese Idee begeistert und daran mitgearbeitet haben, denke ich ist erkennbar, dass unsere Entwicklung einen großen Zuspruch auf den entsprechenden Fachmärkten erhalten wird. Doch dazu zu gegebenen Anlass mehr.
Wir hoffen, mit diesen wenigen Zeilen Ihr Interesse geweckt zu haben. Denn für den restlichen Weg suchen wir nun einen Programmierer (m/w), der sich vorstellen kann uns bei diesem Projekt zu unterstützen, und dem wir im Gegenzug ein, wie wir meinen, attraktives Angebot machen können. Ich möchte an dieser Stelle bewusst keine Summen nennen, da der zeitliche Aufwand und das zu bearbeitende Spektrum zunächst durch die Konversation geführt werden muss. Eine langfristige Zusammenarbeit wird angestebt.
Wir freuen uns auf Ihre Kontaktaufnahme.The C-Dog Team
Ansprechpartner: Herr Sanin Mobil: 0152/034 79 527 Mail: c-dog@deutschland.msIhr habt alles, um eine Hochschule, die Programmierer ausbildet, darum zu bitten. Wie hoch ist der Ansprechpartner? Externe Diplomarbeit?
"zunächst durch die Konversation geführt werden muss"? Ach, man muss vorher darüber sprechen.
Uih, damit bekommst Du nur mehr Webdesiger und Wirtschaftsinformatiker.Für 1000€ (und 1-2 Tage Konversation bis zum organisatorischen Commitment) übersetze ich das Gefasel in ein Stellenangebot, das jene Leute lockt, die Ihr dringendst braucht. Sie sprechen eine ganz andere Sprache.
Das wird harte Arbeit für mich und ist völlig unterbezahlt, aber ich mag Euch direkt mal auf den ersten Blick, also fast geschenkt.
-
Vielleicht gibts ja auch gerade wieder irgendeine Möglichkeit, dass diese Tel-Nr. irgendwie versteckt auf eine kostenpflichtige "Mehrwert"nummer weiterleitet...
-
Ihr habt alles, um eine Hochschule, die Programmierer ausbildet, darum zu bitten.
übersetze ich das Gefasel.
Alles klar !!!
Nächster bitte.
-
C-Dog-System schrieb:
Ihr habt alles, um eine Hochschule, die Programmierer ausbildet, darum zu bitten.
übersetze ich das Gefasel.
Alles klar !!!
Nächster bitte.
Du erkennst nicht, daß ich bisher in diesem Forum der einzige war, der hilfreich war.
Die folgenden Postings werden nur sich gegenseitig im Spott überbieten. Und zwar um so mehr, je stärker Du eingreifst. Dann werden orthoganal dazu noch Wettbewerbe stattfinden, noch weniger in noch mehr Worten zu verpacken. Ich schaue mal zu. Kannst mich unter volkard@normannia.de erreichen, wenn es nicht öffentlich sein soll.
-
Ja, das ist ein Troll.
Nächster bitte.
Welcher nächste? Durch ein trollisches, gar nicht kindliches Verhalten wurden alle wenigen potenziellen Kandidaten bereits verscheucht.
-
Sone::sig schrieb:
C++-Templates: Metaquark vom feinsten
You want to do X, and you think Y is the best way of doing so.
Instead of asking about X, you ask about Y.Hihi. Trifft fast das, was ich meine.
C++-Templates sind nötig. Ganz ohne müßte man stets schlaue Präprozessoren benutzen oder gleich Lisp (ist ja auch keine Schande).
Aber so langsam sind 95% der in freier Wildbahn entdeckten Meta-Programme unnötig verspielt oder gar ganz unnötig.
-
C++-Templates sind nötig.
Natürlich! Hat wer etwas anderes behauptet?
Allerdings finde ich in meinen Projekten zunehmend eine stark-unnötige template-isierung aller Funktionen (und teils auch Klassen). Ist das eine Krankheit?(Die beiden Teile meiner Signatur sind übrigens Zusammenhanglos gewählt worden)
-
Templates als Code-Generatoren zu benutzen, ist allerdings arg unübersichtlich. Es ist nunmal so, dass Templates sozusagen ein Callback-Mechanismus zur Code-Generierung durch den Compiler sind. In der C++-Syntax ist sozusagen ein Schema verankert, wie man etwas aussehen lassen muss, damit der Compiler daraus neue Zeichen ableiten kann. Und da wurstelt man sich dann so durch. Ich verstehe immer nicht, warum einerseits gut lesbarer Quelltext angepriesen wird, auf der anderen Seite aber Templates immer in die höchsten Sphären gelobt werden. Für was sie designed wurden, das ist gut lesbar und nachvollziehbar. Aber für was sie von den Gurus letztlich benutzt werden, ist zwar technisch möglich, aber hat mit gut lesbarem Quelltext nicht mehr viel gemein, meiner Meinung nach. Klar ist aber natürlich, dass es im Moment die einzige Möglichkeit ist, sich unter zuhilfename des C++-Typsystems Code generieren zu lassen. Wozu das mit dem Präprozessor führen würde, das erlebe ich ja gerade am eigenen Leib.
Ich finde die imperative Art und Weise, wie man sich in D Code generieren lassen kann, wäre für das, wofür die Templates eigentlich nicht designed wurden, irgendwie "passender".
/Discuss
-
Nun ja, es ist doch wohl allgemein bekannt, dass Templates C++ kaputt machen - sowohl das Build-System als auch Compilerfehler. (Man kann Implementierungen nicht mehr in .cpp Dateien stecken, und Typfehler werden aus der Implementierung heraus gemeldet, nicht beim Aufruf.) Lustigerweise bieten Templates für Letzteres wieder kleine Hacks an die das weniger nervig machen (enable_if, static_assert mit type_traits, ...) aber das macht Code uU auch wieder nur unübersichtlicher. Aber wenn die Sprache Modules + Concepts hätte, sähe ich da eigentlich kein Problem mehr.
Decimad schrieb:
aber hat mit gut lesbarem Quelltext nicht mehr viel gemein
Kannst du mal ein paar Beispiele dafür zeigen? Nur damit ich weiß, was genau du damit meinst.
-
cooky451 schrieb:
als auch Compilerfehler.
Hihi. Hatte vorhin aus Versehen auf einem map::iterator ein +1 gemacht.
Da bin ich fast vom Stuhl gefallen.||=== tggc5-2, Debug ===|
C:\src\research\tggc5-2\main.cpp||In function 'void erzeugeTeilerSub(std::vector<unsigned int>&, std::map<unsigned int, unsigned int>::iterator, std::map<unsigned int, unsigned int>::iterator, uint32_t)':|
C:\src\research\tggc5-2\main.cpp|21|error: no match for 'operator+' in 'begin + 1'|
C:\src\research\tggc5-2\main.cpp|21|note: candidates are:|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_iterator.h|335|note: template<class _Iterator> std::reverse_iterator<_Iterator> std::operator+(typename std::reverse_iterator<_Iterator>::difference_type, const std::reverse_iterator<_Iterator>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_iterator.h|335|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'const std::reverse_iterator<_Iterator>' and 'int'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_iterator.h|1120|note: template<class _Iterator> std::move_iterator<_Iterator> std::operator+(typename std::move_iterator<_Iterator>::difference_type, const std::move_iterator<_Iterator>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_iterator.h|1120|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'const std::move_iterator<_Iterator>' and 'int'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2362|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, const std::basic_string<_CharT, _Traits, _Alloc>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2362|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.tcc|694|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, const std::basic_string<_CharT, _Traits, _Alloc>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.tcc|694|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'const _CharT*' and 'std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.tcc|710|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, const std::basic_string<_CharT, _Traits, _Alloc>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.tcc|710|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'const std::basic_string<_CharT, _Traits, _Alloc>' and 'int'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2399|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2399|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2415|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, _CharT)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2415|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2427|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, const std::basic_string<_CharT, _Traits, _Alloc>&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2427|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2433|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::basic_string<_CharT, _Traits, _Alloc>&, std::basic_string<_CharT, _Traits, _Alloc>&&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2433|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'const std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2439|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, std::basic_string<_CharT, _Traits, _Alloc>&&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2439|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2451|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::basic_string<_CharT, _Traits, _Alloc>&&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2451|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'const _CharT*' and 'std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2457|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(_CharT, std::basic_string<_CharT, _Traits, _Alloc>&&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2457|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'int'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2463|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, const _CharT*)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2463|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2469|note: template<class _CharT, class _Traits, class _Alloc> std::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::basic_string<_CharT, _Traits, _Alloc>&&, _CharT)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\basic_string.h|2469|note: template argument deduction/substitution failed:|
C:\src\research\tggc5-2\main.cpp|21|note: 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' is not derived from 'std::basic_string<_CharT, _Traits, _Alloc>'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_bvector.h|268|note: std::_Bit_iterator std::operator+(std::ptrdiff_t, const std::_Bit_iterator&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_bvector.h|268|note: no known conversion for argument 1 from 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' to 'std::ptrdiff_t {aka int}'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_bvector.h|354|note: std::_Bit_const_iterator std::operator+(std::ptrdiff_t, const std::_Bit_const_iterator&)|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\stl_bvector.h|354|note: no known conversion for argument 1 from 'std::map<unsigned int, unsigned int>::iterator {aka std::_Rb_tree_iterator<std::pair<const unsigned int, unsigned int> >}' to 'std::ptrdiff_t {aka int}'|
||=== Build finished: 1 errors, 0 warnings (0 minutes, 2 seconds) ===|
-
Und das ist nicht mal besonders schlimm, das hier
no match for 'operator+' in 'begin + 1'|
steht ja direkt am Anfang. Aber: Research/TGGC?
-
Weshalb? Die Fehlermeldung ist doch stringent und bringt es direkt auf die Punkte!
-
Aber für was sie von den Gurus letztlich benutzt werden
Das sind keine Gurus.
Ich finde die imperative Art und Weise, wie man sich in D Code generieren lassen kann, wäre für das, wofür die Templates eigentlich nicht designed wurden, irgendwie "passender".
Kenne D nicht, aber hast du mal Scheme angeschaut? Mittlerweile hat C++ auch ... .
-
cooky451 schrieb:
Aber: Research/TGGC?
Da in src/research/ steht alles drin, was temporär, experimentell, privat und noch nicht stabil ist.
Vielleicht wäre src/unstable/ besser? oder src/tmp/ oder besser aber je nachdem. Es drückt es nicht wirklich aus, denn unter src/ hat jeder Auftraggeber sein eigenes Verzeichnis und darin wird ja auch geforscht. Vielleicht ist src/private besser. Jo, wohl schon, so benutze ich das Verzeichnis.edit: Ach, Quatsch!
Es heißt research (~in Wahrheit frickeln~) in meinem unterirdischen Labor (Kellerwohnung).
-
Mal davon abgesehen, dass D's templates basierend auf den Erfahrungen, die in C++ gemacht wurden und den viel mächtigeren compile-time-Sachen (wofür jetzt ja constexpr nachgerüstet wird), viel abgefahrener sind, gibt es halt auch mixins. Da wird zur Compile-Zeit in echten Funktionen durch string-Zusammensetzung neuer Quellcode generiert.
Siehe: http://dlang.org/mixin.html
Muss man natürlich nicht übertreiben, aber etwas flexibleres kann ich mir kaum noch vorstellen.
Da gibts auch eine nette Zusammenstellung über die D-templates...
Dort wird auch beschrieben, fällt mir gerade auf, was ich im c++-Forum bemängelt hatte, nur viel besser ausgedrückt. Dass man in C++-Templates oftmals obskure Spracheigenschaften ausnutzt, um ansonsten eigentlich klare Ideen umzusetzen.
Wenn ich das so sehe, werde ich natürlich ganz neidisch mit meinem C++
Edit: volkard, ich hab in meinen Solutions immer ein oder mehrere Projekte, die sich irgendwie "Spielwiese" oder "Frickelfestung" nennen
-
Decimad schrieb:
Weshalb? Die Fehlermeldung ist doch stringent und bringt es direkt auf die Punkte!
Nunja. Aber wenn der Compiler alleine 2 Sekunden braucht, um die Fehlermeldungen zu erzeugen, mir so viel Text an den Kopp knallt...
Nee, das macht micht nicht glücklich.
Ja, hier reicht es, auf die erste Zeile zu klicken und er sagt ja "error: no match for 'operator+' in 'begin + 1". Da kann ich mir denken, daß die Leute keinen op+(int) gemacht haben, weil der auf einem Baum dann doch zu lahm wäre.Es kommt aber oft genug vor, daß man was schreibt, was jedem verständigen Programmierer total offenkundig als richtig erscheinen muss, und das nicht in der ersten Zeile erklärt wird. Dann ist es in einer beliebigen der folgenden.
Darum lese ich die Template-Fehlermeldungen schon gar nicht mehr. Die sind mir latte. Wenn sowas kommt, schaue ich die letzen Zeilen an, die ich gebaut habe und überlege, was daran falsch sein könnte. Klappt fast immer und spart Ärger. Ok, es ist dazu vielleicht fast notwendig, daß man selber die benutzen Klassen bauen könnte und genug ähnlicher gebaut hat, um eine Gefühl für Template-Fehlermeldungen zu haben. Für mich ist der Weg ok. Wenn der Compiler 2s zum Erzeugen der Fehlermeldungen braucht oder sonstwie gleich seitenweise Schrott erscheint, dann klicke ich die oberste anklickbare Zeile (falls die IDE das nicht schon übernimmt), lese den Fehlertext und schaue die Zeile an, und wenn das nicht erfolgreich ist, dann überlege ich mir, was schiefgegangen sein mag. Und wenn es nicht klappt, dann überlege ich nochmal weniger oberflächlich. Dann denke ich darüber nach, den Debugger anzuwerfen. Aber diese Meldungen alle zu lesen, nö. Nur im Notfall. Bringt eh nix. Sourcecode angucken, von dem, was man aufrufen wollte, ist schneller.