Zum Inhalt springen

ThorJulz

Mitglieder
  • Gesamte Inhalte

    1
  • Benutzer seit

  • Letzter Besuch

  1. Hey, bin zum ersten Mal hier und brauche dringend eure Hilfe. Es geht zum folgendes: Ich soll eine Klasse "Bild" erstellen, in der die private-Attribute hoehe und breite festgelegt sind. Mit jedem erstellen Objekt der Klasse bild soll ein zweidimensionales array erstellt werden, dessen größe zur laufzeit varibabel durch hoehe und breite festgelegt wird. sollte man nichts manuelles eingeben, soll das bild mit 10x10 erstellt werden. außerdem soll nach ende des programms bzw löschen des objektes auch der allokierte speicher für das array mit delete[] gelöscht werden. Das Bild soll erstmal nur grau-werte enthalten ( lauter nullen ) und anschließend mittels einer methode geschwärzt werden ( jede 0 wird auf 1 gesetzt ). Anschließend soll ein copy-konstruktor erstellt werden, der das bild kopiert. Ich möchte keine expliziten Lösungen ( nur im Notfall ) sondern am Besten einen Erarbeitungsprozess mit euch. Hier was ich schon gemacht habe, allerdings sind noch Fehler drin. Ich bin kein totaler Anfänger, aber ein wenig krank und daher können schön triviale Sachen falsch sein. Zum unteren Code habe ich folgende Fragen, schonmal zur Orientierung: 1. Läuft das Erzeugen/Löschen des Arrays in der Klasse selbst ab oder muss ich das über die von mir geschriebene Methode machen? 2. Ich bin mir ziemlich sicher, dass mein Weg, das zweidim. Array zu erstellen korrekt ist - aber habe ich auch alle Parameter richtig übergeben? Bevor das Array richtig erstellt wird und ich weiss, wie ich darauf zugreifen kann, kann ich leider die anderen Methoden nicht schreiben. Wäre SUPER wenn ihr mir helft. LG Julz #include <iostream> using namespace std; class Bild{ private: int breite; int hoehe; public: int getbreite(){return breite;} int gethoehe(){return hoehe;} void setbreiteundhoehe(int k, int p){breite = k; hoehe = p;} void erzeugearray(int hoehe, int breite); void gebearrayaus(int **a, int breite, int hoehe); void loeschearray(int **a); }; void Bild::erzeugearray(int hoehe, int breite){ int **a = new int* [hoehe]; for(int i=0;i<hoehe;++i){ a[i] = new int [breite]; } }; void gebearrayaus(int **a, int breite, int hoehe){ for(int i=0;i<breite;i++){ for(int j=0;j<hoehe;j++){ cout << a[i][j] << endl; } } }; void Bild::loeschearray(int **a){ for(int i=0;i<hoehe;++i){ delete[] a[i];} delete[] a; }; int main(){ Bild bild; bild.setbreiteundhoehe(10, 10); cout << "Breite des Bilds in Pixeln: " << bild.getbreite() << endl; cout << "Hoehe des Bilds in Pixeln: " << bild.gethoehe() << endl; void gebearrayaus(int **a, 10, 10); //bild.loeschearray(); system ("PAUSE"); return EXIT_SUCCESS; }

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...