Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » eingebettetes Objekt geht nicht warum?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
16.05.2006, 20:51 Uhr
Poffelnator



Bin gerade dabei mein Programm zu schreiben (von kurz weiter unten). Habe die erste der drei Klassen fertig, funktioniert auch ohne Probleme, aber bei der zweiten komm ich nicht weiter.

Da bin ich gerade:
Meine .h

C++:

#ifndef LinieH
#define LinieH

#include "Punkt.h"

class Linie
{
    Punkt p1, p2;

public:
    Linie();
    Linie(Punkt pA, Punkt pE);
};
    

#endif LinieH




und hier meine .cpp


C++:
#include "Linie.h"
#include "Punkt.h"

Linie::Linie()
{
    p1.Set(0,0);
    p2.Set(0,0);
}

Linie::Linie(Punkt pA,Punkt pE)
{
    p1.Set(pA);
    p2.Set(pE);
}





Ich erhalte immer folgende Fehlermeldung:

Kein geeigneter Standardkonstruktor verfuegbar (4x)

Habe schon meine Nase in ein schlaues Buch gesteckt und raus bekommen das es so auch nicht gehen kann, da ja noch keine Objekte der Klasse Punkt vorhanden sind. Dann versucht wohl der Compiler einen Standardkonstruktor zu erzeugen, geht aber nicht, da ich ja in der Klasse Punkt selbst ein Konstuktor festgelegt habe.

Es steht natürlich gleich ein Lösungsvorschlag bei aus dem ich aber nicht recht schlau werde bez der irgend wie nicht geht.

Konstruktor Klasse Linie : p1(0,0) // so etwa habe ich es verstanden, ist leider kein richtiges Beispiel bei.

Wie bekomm ich jetzt mein kleines Programm zum laufen?

Dieser Post wurde am 16.05.2006 um 20:52 Uhr von Poffelnator editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
16.05.2006, 20:55 Uhr
Karldin Shinowa
Professional Noob


hat die klasse Punkt nen konstruktor
Punkt();

??
--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
16.05.2006, 21:05 Uhr
Poffelnator



ja.

Punkt(double x, double y);
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
16.05.2006, 21:10 Uhr
Karldin Shinowa
Professional Noob


ich meine einen OHNE Parameter!!!!!

also

C++:
class Punkt
{
//..
public:
   Punkt();


wenn nicht mach das und initialisiere alles mit 0 im konstruktor
--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.

Dieser Post wurde am 16.05.2006 um 21:12 Uhr von Karldin Shinowa editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
16.05.2006, 21:11 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Es hilft nicht das du einen Konstruktor für 2 paramter hast. Du musst noch nen leeren definieren...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
16.05.2006, 21:14 Uhr
Karldin Shinowa
Professional Noob


oder halt die dumme Variante:

C++:
class Linie
{
    Punkt p1(0,0);
    Punkt p2(0,0);

public:
    Linie();
    Linie(Punkt pA, Punkt pE);
};


--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.

Dieser Post wurde am 16.05.2006 um 21:14 Uhr von Karldin Shinowa editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
16.05.2006, 21:14 Uhr
Poffelnator



Super, danke für die schnelle Hilfe. Jetzt geht's.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
16.05.2006, 21:16 Uhr
Karldin Shinowa
Professional Noob


Noch ein nachtrag: Warum kann der computer da keinen Standartkonstruktor automatisch erzeugen. macht er ja auch wenn ich keinen konstruktor hab...
--
Ich will die Welt verbessern, doch Gott gibt mir nicht den Code.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
16.05.2006, 21:36 Uhr
Spacelord
Hoffnungsloser Fall



Zitat von Karldin Shinowa:
Noch ein nachtrag: Warum kann der computer da keinen Standartkonstruktor automatisch erzeugen. macht er ja auch wenn ich keinen konstruktor hab...

Weil du nen eigenen definiert hast .

@Poffelnator:

C++:
Punkt(double x=0.0, double y=0.0);


Das sollte dein Problem auch lösen.

Mfg Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
16.05.2006, 21:41 Uhr
Poffelnator



Das macht er anscheinend nur wenn er keinen Konstruktor/ Destuktor vorfindet. Ist also nur so eine Art Notsystem wenn ich das richtig verstanden habe.

Berufe mich da auf „c/c++ Kompendium von Markt und Technik“
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: