Hallo Forum,
nur kurz zur Erklärung. Ich habe schon jahrelang mit Java programmiert und bin jetzt gezwungen mich in C++ einzuarbeiten. Dass Java für den Programmierer deutlich komfortabler ist, ist ja kein Geheimnis. Was für mich aber besonders schwierig ist, sind die ungenauen Fehlermeldungen des Compilers (in meinem Fall g++ unter Mac OS). Wenn ich zum Beispiel in Java vergessen habe einen Parameter zu übergeben, hab ich die Fehlermeldung
Code:
Method blabla() expects parameter myParameter to be given
Code:
Method blabla() expects parameter myParameter to be given
Code:
Method blabla() expects parameter myParameter to be given
In C++ gibts nur die Meldung, dass es die Methode nicht gibt:
Code:
No matching function for call to blabla
Code:
No matching function for call to blabla
Code:
No matching function for call to blabla
In diesem Fall kann man ja noch ganz gut drauf kommen, aber bei einem
Code:
Expected ';' before '}' token
Code:
Expected ';' before '}' token
Code:
Expected ';' before '}' token
bei einem fehlenden Include ist man schon mal schnell ne Stunde am suchen. Wenn ich mit Eclipse Java programmiert habe, hat er mir bei einem fehlenden Include gleich den richtigen Input ermittelt und man konnte sogar durch Mausklick die Include Deklaration hinzufügen.
Ich weiß, dass ich den Java Komfort unter C++ nicht erwarten kann, aber gibt es denn nicht zumindest alternative Compiler, die ein bisschen besser Hilfestellung geben als mein g++?
Das ist natürlich eine Sache des Compilers, nicht der Sprache. Wobei ich sehr verwundert bin, d der GCC immer sehr ausführliche Fehlermeldungen gibt. Zum Beispiel:
Code:
No matching function for call to blabla
Code:
No matching function for call to blabla
Code:
No matching function for call to blabla
Ist das bei dir wirklich alles? Bei mir kommt da nämlich etwas in der Art:
Code:
No matching function for call to blabla(foo, bar)
Possible candidates are: blabla(foo, bar, int)
blabla(foo)
Code:
No matching function for call to blabla(foo, bar)
Possible candidates are: blabla(foo, bar, int)
blabla(foo)
Code:
No matching function for call to blabla(foo, bar)
Possible candidates are: blabla(foo, bar, int)
blabla(foo)
Oder dies:
Code:
Expected ';' before '}' token
Code:
Expected ';' before '}' token
Code:
Expected ';' before '}' token
Ok, das kann auch bei einem fehlenden Include passieren und ist auch in dem Zusammenhang nicht hilfreich, aber kommt bei dir nicht vorher noch eine Meldung in dieser Art?
Nächstes Thema anzeigen Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums
für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de
Werbekostenerstattung verdient werden kann.
Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de
enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt
(vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in
privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden.
Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere
übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.