Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
0 Punkte wegen fehlender Compilierbarkeit??
Hallo,
ich habe auf die Matrix-Aufgabe 0 Punkte erhalten, weil diese angeblich nicht compiliert. Bei mir tut sie das aber ohne Kommentar und auch im CIP-Pool. An wen soll ich mich wenden?
Vielen Dank!
Würde folgendes empfehlen:
Andere Frage: Werden die Testcases eigentlich veröffentlicht?
Nochmal andere Frage: Wie bringt man den g++ Compiler dazu, dass der die Option [m]-std=c++11[/m] versteht?
Installiert hab ich den Compiler mittels [m]apt-get install g++[/m], aber er versteht nur [m]-std=c++0x[/m].
Hast du dir einen Testcase geschrieben, der alle von dir implementierten Funktionen ausführt? Wenn du das nicht gemacht hast ist es wahrscheinlich, dass sich irgendwo ein Fehler eingeschlichen hat der das Kompilieren verhindert wenn du die Funktion dann doch mal aufrufst.
Dann brauchst du eine neuere Version. Im CIP gehts
Vermutlich ist deine Distri zu alt. Allerdings ist selbst die Version in Debian Stable aktuell genug:
[m] lsb_release -d
Description: Debian GNU/Linux 7.4 (wheezy)
g++ --version | head -1
g++ (Debian 4.7.2-5) 4.7.2
cat test.cpp
#include <iostream>
int main() {
auto x = std::stoi("0xB", 0, 0);
std::cout << "C++" << x << std::endl;
}
g++ -std=c++11 -Wall -Wextra -Werror -pedantic test.cpp -o test
$[/m]
Nein. Einzig verfügbare Testcases sind selbstgeschriebene, sowie die von freundlichen Kommilitonen, wie rudis oder iridium, zur Verfügung gestellte.
Ja, die sind mir bekannt, helfen mir aber beim Nachvollziehen der Bewertung nicht weiter. Ok, habe mittlerweile herausgefunden, woran es kaputt geht. [size=8]Ich hasse C++.[/size]

Nein. Einzig verfügbare Testcases sind selbstgeschriebene, sowie die von freundlichen Kommilitonen, wie rudis oder iridium, zur Verfügung gestellte.
Wo gibt’s die?
Ist die Ursache ein [m]if(!=)[/m] in der Matrix.cpp? Wenn die mit Complex getestet wurde, kompiliert das nicht, weil Complex.h nur [m]==[/m] überlädt, nicht aber [m]!=[/m] …
Ja, die Ursache ist ein “!=” in der Matrix.cpp.
Finde ich aber echt gemein, da 0 Punkte zu geben, weil es nicht compiliert - der Fehler liegt schließlich in der falschen Benutzung der Klasse, weil ich fälschlicherweise vorausgesetzt habe, dass diese Operation verfügbar ist. Man könnte da sicherlich auch anders abrechnen…

Ja, die Ursache ist ein „!=“ in der Matrix.cpp.
Finde ich aber echt gemein, da 0 Punkte zu geben, weil es nicht compiliert - der Fehler liegt schließlich in der falschen Benutzung der Klasse, weil ich fälschlicherweise vorausgesetzt habe, dass diese Operation verfügbar ist. Man könnte da sicherlich auch anders abrechnen…
Ist halt eine automatische Korrektur, wenns da nicht kompiliert wirds schwer. Hast du deinen Code mal selbst getestet?

Ja, die Ursache ist ein „!=“ in der Matrix.cpp.
Finde ich aber echt gemein, da 0 Punkte zu geben, weil es nicht compiliert - der Fehler liegt schließlich in der falschen Benutzung der Klasse, weil ich fälschlicherweise vorausgesetzt habe, dass diese Operation verfügbar ist. Man könnte da sicherlich auch anders abrechnen…
Erstellen Sie anschließend eine Matrix von komplexen Zahlen, indem Sie Matrix mit Complex als Template benutzen.
Ja, das ist mit Templates halt so eine Sache leider… Aber schreib doch ne E-Mail an die Verantwortlichen. Wenn das wirklich nur der Operator war, kann man da doch sicher was machen.