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!

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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