Zum Inhalt springen

Fehlermeldung: Standartargument für Parameter...


Empfohlene Beiträge

Geschrieben

moin

ich hab ne frage bezüglich eines fehlers den ich beim complieren bekomm...

ich habe eine datei:

abc.cpp

und ein headerfile:

abc.h

in dem headerfile hab ich eine klasse deklariert:

BVOBJ

diese enthält eine Funktion:

Blobanalyse(10 parameter)

nun hab ich da noch einen weiteren parameter hinzugefügt..

Blobanalyse(10 parameter, int a);

diese wird nun in der abc.cpp beschrieben:

int BVOBJ::Blobanalyse(10 parameter, int a){

-- code --

return int;

}

der aufruf sieht entsprechend

int anz=Blobanalyse(10 parameter, int a);

das problem:

wenn ich das nun compiliere bekomm ich die fehlermeldung:

Fehler: Standartargument für Parameter 11

wieso ist das so bzw was hab ich vergessen?

thx für hilfe

LordTerra

Geschrieben (bearbeitet)

ja naja... das is denke ich richtig ...

aber wo muss ich denn nun auch noch a nen wert zuweisen ?

ich hab schon ewig kein c++ mehr programmiert und naja das is nen etwas größeres programm...

Bearbeitet von LordTerra
Geschrieben


int a = 5

int anz=Blobanalyse(10 parameter, a); // oder gleich int anz=Blobanalyse(10 parameter, 5);

10 Parameter denk ich aber mal steht nicht so deklariert. O.o

und das return int aus der Funktionsdeklaration wird sicher auch anders sein, oder?

Geschrieben

ja das return einfach ignorieren hatte nur damit zeigen wollen das da auch was zurück gegeben wird ...

hmmm dieses int a=0; soll wo hin ? in den headerfile?

oder in den cpp ?

hmmm ok ich muss glaube doch etwas weiter ausholen ...

also:

in dem headerfile gibt es 2 klassen (gibt mehr aber wichtig sind nur 2)

OBJ:

da ist die blobanalyse drin

und OCR:

da steht drin

Compute1();

Serializieren();

und die variable

private int zeichenabstand;

in der cpp:

OCR::Serializieren(){

hier wird aus einer datei die variable

zeichenabstand ausgelesen und zugewiesen

}

OCR::Compute1(){

in der Funktion wird nun die Blobanalyse aufgerufen (siehe oben)

}

int OBJ::Blobanalyse(10 parapeter, int zeichenabstand){

erg wird zurück gegeben

}

also rein theorethisch sollte diese variable durch die funktion Serializieren() belegt sein ... ich weis nun nicht ob das noch irgendwas fehlt ...

thx für hilfe

LordTerra

Geschrieben

also rein theorethisch sollte diese variable durch die funktion Serializieren() belegt sein ... ich weis nun nicht ob das noch irgendwas fehlt ...

D.h. a gibt es schon irgendwo als Member in einer Klasseninstanz?

Nun, dann darfst du a nicht in der Funktion neu deklarieren (sonst wird der Member überblendet), sondern genau den Member eben nehmen.

[Edit:]

Ich seh grad das Serializieren() ja in einer anderen Klasse ist, also doch nichts mit Klasseninstanz.

Wie soll also die Variable dann belegt worden sein?

Geschrieben

wat ?

sorry lang kein c++ mehr programmiert ...

also wie gesagt a = zeichabstand (wollt das nur eben etwas einfacher darstellen)

also in der klasse OCR ist zeichenabstand deklariert ...

aber in der Klasse OBJ halt nicht ... da die Blobanalyse ja nun eine funktion von OBJ ist dachte ich schon das ich diese variable in der funktion Blobanalyse neu deklarieren muss..

also ich übergeb die in OCR deklarierte und zugewiesene variable an die funktion blobanalyse der klasse OBJ...

Geschrieben

Hat einer der "10 Parameter" ein Standardargument (Defaultwert)? Falls ja, muss der neue auch eins bekommen. Sobald du einem Parameter ein Standardargument verpasst, müssen alle nachfolgenden auch eins bekommen.

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