Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Operator << überladen Fehlermeldung

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
03.10.2014, 18:55 Uhr
~MisterIÖS
Gast


Hallo Leute ich bin grad am durchdrehen,

Ich will den << operator überladen so, dass ich später sowas schreiben kann:

cout << meinObjekt << mein2Objekt << endl usw....


meine Klasse schaut so aus:


C++:
class bignum {
...
...
   friend ostream& operator<<(ostream & cout, const bignum & number);
...
};



die Definition schaut so aus:

C++:

ostream& operator<<(ostream & cout, const bignum & number){
    
    return cout;
}




im Moment tut der Operator nichts, aber das Problem ist eigentlich dass er mir schon bei der Deklaration einen Syntax error meldet:

Error 1 error C2143: syntax error : missing ';' before '&'
Error 2 error C2433: 'ostream' : 'friend' not permitted on data declarations
Error 3 error C4430: missing type specifier - int assumed. Note: C++ does not support
Error 4 error C2061: syntax error : identifier 'ostream'
Error 5 error C2805: binary 'operator <<' has too few parameters
Error 6 error C2143: syntax error : missing ';' before '&'
Error 7 error C2433: 'ostream' : 'friend' not permitted on data declarations
Error 8 error C4430: missing type specifier - int assumed. Note: C++ does not support
Error 9 error C2061: syntax error : identifier 'ostream'
Error 10 error C2805: binary 'operator <<' has too few parameters
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.10.2014, 09:13 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,


Code:
syntax error : missing ';' before '&'



zeugt davon das er den Typ davor nicht kennt. d.h "ostream" kennt er an der Stelle nicht.

Vermutlich weil "ostream" im namespace "std" definiert wird. Wenn du also nicht "using namespace std;" bzw "using std::ostream" irgendwo reinschreibst, musst du überall "std::ostream" statt nur "ostream" schreiben.
--
class God : public ChuckNorris { };
 
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: