www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "C/C++" - Konstruktor
Konstruktor < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Konstruktor: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:53 Mi 25.03.2009
Autor: tynia

Hallo. Ich habe hier einen Auszug aus einer Header-Datei die eine Klasse Matrizen definiert. Dazu habe ich eine Frage.

class Matrizen
{
protected:

int n; //Matrix ist eine nxm Matrix
int m;
double values [10][10];

public:

Matrizen () {} //Hier meine Frage:Erzeugt hier der Konstruktor ein Objekt?

void init (int Zeilen,int Spalten);

void show_Matrix(); // Ausgabe einer Matrix
void set_Matrix();
}
usw.

Danke schonmal

        
Bezug
Konstruktor: Antwort
Status: (Antwort) fertig Status 
Datum: 12:41 Do 26.03.2009
Autor: Somebody

Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

> Hallo. Ich habe hier einen Auszug aus einer Header-Datei
> die eine Klasse Matrizen definiert. Dazu habe ich eine
> Frage.
>  
> class Matrizen
>  $\{$
>  protected:
>  
> int n; //Matrix ist eine nxm Matrix
>  int m;
>  double values [10][10];
>  
> public:
>  
> Matrizen () $\{\}$ //Hier meine Frage:Erzeugt hier der
> Konstruktor ein Objekt?

Nein, es ist niemals ein Konstruktor, der selbst ein Objekt seiner Klasse "erzeugt". Was geschieht ist vielmehr folgendes: Wenn ein Anwendungsprogramm ein Objekt diese Klasse erzeugen will, im Extremfall mit einer Anweisung der Form meineMatrizen = new Matrizen();Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

, dann alloziert das Runtime-System zuerst den für dieses Objekt nötigen Speicher und ruft dann systematisch in der Klassenhierarchie absteigend Konstruktoren auf, die diesen Speicher geeignet zu initialisieren haben. Der obige Konstruktor der Klasse Matrizen wäre dann einfach der letzte dieser Konstruktoren (die eigentlich genauer Initialisatoren genannt werden müssten, aber die Tradition will es halt anders...)

>  
> void init (int Zeilen,int Spalten);
>  
> void show_Matrix(); // Ausgabe einer Matrix
>  void set_Matrix();
>  $\}$
>  usw.
>  


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]