Zum Inhalt springen

extra qualification 'binary::' on member 'operator='


Empfohlene Beiträge

Geschrieben

Hi Ich hab beim kompilieren folgenden Fehler gekriegt, kann mir da jmd vielleicht weiter helfen?

binary.h:18: error: extra qualification 'binary::' on member 'operator='

binary.h:19: error: extra qualification 'binary::' on member 'shift'

binary.h:20: error: extra qualification 'binary::' on member 'exist'

Dir Headerdatei binary.h sieht wie folgt aus :

#ifndef _BINARY_H_H_

#define _BINARY_H_



class binary : public vector{



public:

	binary() {}                   // Standard-Constructor

	~binary() {}                 // Destructor

int binary_decimal();

binary decimal_binary(int d1);

binary& operator+=(binary& v1);

binary& operator-=(binary& v1);

binary binary_inv(binary v1);

binary twoscomplement(binary v1);

binary& operator=(const binary& v);                         // Zuweisungs-Operator

binary& binary::operator=(const vector& v);

binary binary::shift();

bool binary::exist();

friend binary operator+(binary& v1,binary& v2);


private:

//	vector v_binary;

};


#endif

und der dazugehörige Ausschnitt-Quellcode binary.cpp:
binary& binary::operator=(const binary& v)

{

	if(this!=&v)                // Selbstzuweisung vermeiden

	{

		if(element)

			delete[] element;

		n=v.n;

		if(n!=0)                  // Wenn kein leerer Vektor

		{                         // elementweise kopieren

			element=new double[n];

			for(unsigned int i=0;i<n;i++)

				element[i]=v.element[i];

		} else

			element=0;

	}

	return *this;

}



binary& binary::operator=(const vector& v)

{

	if(this!=&v)                // Selbstzuweisung vermeiden

	{

		if(element)

			delete[] element;

		n=v.n;

		if(n!=0)                  // Wenn kein leerer Vektor

		{                         // elementweise kopieren

			element=new double[n];

			for(unsigned int i=0;i<n;i++)

				element[i]=v.element[i];

		} else

			element=0;

	}

	return *this;

}


binary binary::shift(){

	bool exit = false;

	int i= 0;

	int deci = 0;;

	double check = 0.0;

	int dimension = dim();

	binary result;

		do{

			if (element[i] == 1){

				for (int j=i; j<dim();j++){

					check += element[j];

				}

				check/=(j-i);

				if (check != 1){ 

					deci = binary_decimal();

					deci = deci + pow(2,i);

					result.decimal_binary(deci);

					if (result.dim() < dimension){

						for (int k = result.dim(); k < dimension; k++){

						result.insert(k,0);

						}

					}

					exit = true;

				}

				else{

					for (int j = 0; j < dimension; j++){

						result.insert(j,0);

					}

					exit = true;

				}

			}

			i++;

		}while(!exit);

		return result;

}


bool binary::exist(){

	bool _exist = true;

	bool exit = false;

	double check = 0;;

	int sum = 0;

	for (int i = 0; i< dim();i++){

	sum += element[i];

	}

	if (sum == 0){

		_exist = false;

	}

	i=0;

	do{ 

		if (element[i] == 1){

			for (int j=i; j<dim();j++){

				check += element[j];

			}

			check/=(j-i);

			if (check == 1){

				_exist = false;

			}

			exit = true;

		}

		i++;

	}while(!exit);

	return _exist;

}

Woran könnte es liegen?

Geschrieben
Woran könnte es liegen?

Die Fehlermeldung ist eigentlich ziemlich klar:

An dem "binary::" an den angemerkten Stellen in der Headerdatei. Innerhalb der Klassendefinition ist dieser Scope-Prefix nicht nur unnötig, sondern schlicht falsch.

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