Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi zusammen

hier erstmal etwas QT:

#include <iostream.h>

#include <conio.h>

class qm

{

float laenge, breite, ergebnis;

void calc ();

public:

qm(float l, float B);

qm(void);

void get ();

};

qm::qm(float lae=0, float bre=0)

{

laenge=lae;

breite=bre;

ergebnis=0;

}

qm::qm(void)

{

laenge=100;

breite=100;

ergebnis=0;

}

void qm::calc ()

{

ergebnis=laenge*breite;

}

void qm::get ()

{

qm::calc();

cout << endl << laenge << endl;

cout << endl << breite << endl;

cout << endl << ergebnis << endl;

}

int main ()

{

qm test;

test.get();

getch();

}

Nun ist mein Problem, dass sich der parameterlose Kosntruktor nicht mit meinem

Konstruktor mit Parameter verträgt. Wenn ich einen raus schmeisse dann tuts.

Oder kann ich Konstruktoren garnicht überladen ?

Fehlermeldung:

Ambiguity between qm::qm(float,float) and qm::qm()

Danke für Hilfe

cya

alligator

Geschrieben

Die beiden Konstruktoren qm::qm(float,float) und qm::qm() sind auch ambiguous, da Du folgendes Konstrukt verwendest: qm::qm(float lae=0, float bre=0). Der Compiler kann in diesem Fall nicht entscheiden, welcher Constructor verwendet werden soll, da es zwei parameterlose gibt, die matchen.

Nic

Geschrieben

Hi

hmm versteh ich nicht, denn qm::qm(float lae=0, float bre=0). ist doch nicht parmeterlos, sondern es wird nur ein Standardparameter gesetzt.

Aber recht hast du, dass es tut wenn ich =0 wegmachen ...

cya

alligator

Geschrieben
Original geschrieben von alligator

Hi

hmm versteh ich nicht, denn qm::qm(float lae=0, float bre=0). ist doch nicht parmeterlos, sondern es wird nur ein Standardparameter gesetzt.

Aber recht hast du, dass es tut wenn ich =0 wegmachen ...

cya

alligator

ups text verschwunden, nochmal:

du hast schon recht, qm::qm(float lae=0, float bre=0) ist nicht parameterlos! Allerdings ist durch das setzen der Default-Werte auch der Aufruf ohne parameter legitim!!! Dies wiederspricht sich mit den Defaultkonstruktor!

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...