ostream-Problem: Matrix ausgeben
-
std::ostream& operator<< (std::ostream& outstream, const Matrix& m) { for (unsigned int i = 1; i <= m.getRows(); i++) { for(unsigned int j = 1; j >= m.getColumns(); j++) outstream << m.getElement(i,j); outstream << std::endl; } return outstream; }
Diese Funktion soll eigentlich nur zum debuggen dienen, aber trotzdem geht sie nicht: es wird überhaupt nix ausgegeben. Arbeite noch nicht sehr lange mit C++ (komme von C) und hab deshalb noch nicht viel Ahnung von den Strömen. Vielleicht hat einer eine Lösung zur Hand, am besten mit Feldern für die einzelnen Elemente - der Übersicht wegen (printf lässt grüßen)
Danke schonmal!
-
for(...; j >= m.getColumns();...)
sollte wohl <= heißen
warum zählst du eigentlich nicht von 0 an?
-
lol, ich honk. Das war der Fehler schon *haareausreiß*
Danke davie! Wäre wahrscheinlich nie draufgekommen.
warum ich bei 1 anfange? Weil meine getElementfunktion von 1 bis n Werte liefert und nicht, wie beim array üblich, mit der 0 beginnend (erstes find ich persönlich bei einer Matrix passender).
Vielleicht krieg ich das ganze jetzt noch in ein schönes Format mit setw(width)...