C++ Frage zu Token

Gast #4494670
Lesenswert?
• ▲
▼
Hallo zusammen ich arbeite momentan mit dem Einführungsbuch C++ von 
Stroustrup und habe ein Verständnisproblem, hoffentlich könnt ihr mir 
weiterhelfen.

Es geht um das berüchtigte Taschenrechnerprogramm, hier ein 
Codefragment:
1
class Token{
2
public:
3
   char kind;
4
   double value;
5
   Token(char ch):kind(ch), val(0){}
6
   Token(char ch, double val):kind(ch), value(val){}
7
};
8

9
Token get_token(); //liest ein Token aus cin
10

11
vector<Token> tok; hier legen wir die Token ab
12

13
int main()
14
{
15
   while(cin){
16
      Token t = get_token();
17
      tok.push_back(t);
18
   }
19
   //...
20
}

Die Klassendefinition ist soweit klar, auch die Konstruktoren. Aber die 
Zeile:
1
Token get_token()
verstehe ich nicht. Ist get_token() eine Funktion? Wenn ja warum wird 
dann hier der Rückgabetyp angegeben? Ein Rückgabetyp muss man doch nur 
bei Funktionsprototypen angeben.
Gast #4494687
Lesenswert?
• ▲
▼
Stimmt danke! Habe auch gerade im Buch im Kapitel "Funktionen" 
nachgeschlagen, dort steht, dass Funktionsdeklaration und 
Funktionsdefinition nicht zwingend beieinander stehen müssen. Das würde 
dann erklären warum hier nur die Deklaration steht und nicht mehr. Habe 
es jetzt kapiert.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.