Ich frage mich, ob es eine Möglichkeit gibt, bessere Informationen über den Ort eines Fehlers in msvc (2005) zu erhalten?Gibt es eine Möglichkeit, bessere Informationen für den Kontext eines Fehlers zu erhalten, wenn Sie msvc verwenden? (ex: C2248)
Wenn zum Beispiel von boost :: noncopyable in meiner Klasse zu erben bekomme ich einen C2248 Fehler etwas sagen wie:
Fehler C2248: 'boost :: noncopyable _ :: noncopyable :: noncopyable': nicht zugreifen kann privates Member, das in der Klasse 'boost :: noncopyable _ :: noncopyable' deklariert ist. Diese Diagnose im Compiler erzeugte Funktion aufgetreten ‚MyClass :: MyClass (const myClass &)‘
aber es fehlen mir zu sagen, wo genau wurde die Kopie Konstruktor aufgerufen. Das ist ein bisschen nervig. Ich bin wirklich nicht sicher, aber ich denke, ich erinnere mich an eine Einstellung irgendwo wo ich die Ausgabeebene oder etwas angeben konnte, aber ich suchte und fand nichts, also meine Frage ist: Gibt es eine Möglichkeit, besser (voller?) Fehlermeldung in msvc ?
Edit: Nun, da stackoverflow sagte mir nur, dass ich eine Antwort akzeptieren sollte, fragte ich mich, ob jemand könnte sagen, wenn msvc 2008/2010 eine bessere Diagnose für diesen Fehler geben? Jemand erwähnte auch, dass GCC tun sollte, kann jemand das bestätigen? Was ist mit anderen Compilern (Intel ?, Comeau?)
Dank
Ich habe das auch schon mal erlebt. Vielleicht würde es sich lohnen, es auf connect.microsoft.com zu melden. – jalf
Scheint, dass es bereits gemeldet und geschlossen wurde, weil es nicht als wichtig eingestuft wurde. Danke für den Link, von dem ich nichts wusste. Es scheint, als könnte es nützlich sein. – n1ckp
Hier ist der Link auf connect, wenn jemand interessiert, um es abzustimmen: https://connect.microsoft.com/VisualStudio/feedback/details/467747/compiler-shows-error-but-with-no-hint-to-the- -users-Quellcode. Hatte gerade ein ähnliches Problem mit einem fehlenden Semikolon am Ende einer Klassendefinition und vs würde mir keinen hilfreichen Hinweis in dem Fehler geben. – n1ckp