A
Mufasa schrieb:
Also das mit std::vector kenne ich jetzt ehrlich gesagt gar nicht... wäre das auch damit machbar die Aufgabe?
Ob es für die Aufgabe machbar ist kommt darauf an, wer die Aufgabe gestellt hat. Lehrer sind häufig lernresistent (Zumindest scheinen sie ihr Wissen nicht zu aktualisieren), und std::vector ist "erst" seit 1998 Teil des C++ Standards (Noch genauer: Teil der C++ Standard Bibliothek die zum C++ Standard gehört).
Mufasa schrieb:
ich hab gar nicht an das delete gedacht... hmmm... soll ich das dann am Ende in der main machen? Auch wenn das unschön ist? Oder gibt es andere Möglichkeiten?
Wo du es machst ist fast egal (Wobei es am sinnvollsten ist, Reservieren und Freigaben an einem Ort zu machen), bei Zeigern bist du nun einmal selbst verantwortlich. Bessere Alternativen sind std::vector, Smartpointer (std::tr1::shared_ptr und Co, Teil vom TR1, einem Nachtrag zum C++ Standard von 2003) oder andere Mechanismen die sich um die Speicherverwaltung kümmern.
Davon abgesehen würde ich (wenn es nicht Teil der Aufgabe ist), auch die Sortierung über vorhandene Funktionen erledigen ;p (std::sort oder ähnliches).
Mufasa schrieb:
Weil das aber jetzt ein dyn. Array ist, ist es schwieriger.... deswegen hab ich eine extra temp-Variable...
Ich bin mal wieder böse (und lasse es einfach mal unkommentiert, da es wohl an der Aufgabenstellung vorbei gehen würde - kannst es ja mal ausprobieren [Keine Garantie, da ungetestet]):
#include <algorithm>
#include <iostream>
#include <vector>
int main()
{
std::vector<int> zahlen;
zahlen.push_back(4);
zahlen.push_back(1);
zahlen.push_back(8);
zahlen.push_back(5);
std::copy(zahlen.begin(), zahlen.end(), std::ostream_iterator<int>(std::cout, "\n"));
std::sort(zahlen.begin(), zahlen.end());
std::copy(zahlen.begin(), zahlen.end(), std::ostream_iterator<int>(std::cout, "\n"));
}