Funktionen in Header deklarieren
-
Hallo Leute,
also habe gehört das man ja Funktionen in einem Header deklarieren kann. Nun hab ich dazu eine Frage:
Ich weis das man auch den Typ der Parameter angeben muss.
Also sagen wir ich habe eine Funktion:int foo(int a, int b)Somit muss ich diese ja dann im Header folgendermaßen deklarieren:
int foo(int, int)soweit richtig?
Nur frag ich mich wie funktioniert dies wenn ich vectoren benutze und wie wenn ich Referenzen brauche?
Hab das mit den Vectoren mal probiert, ejdoch kam dann im Header die Fehlmeldung: vector nicht bekannt. Dann habe ich#include <vector>hinzugefügt ejdoch noch immer die gleiche Fehleldung.
Danke für eure Hilfe
-GhostfaceCilla-
-
GhostfaceChilla schrieb:
Somit muss ich diese ja dann im Header folgendermaßen deklarieren:
int foo(int, int)soweit richtig?
nein, du musst die nicht so deklarieren. die namen der argumente dürfen ruhig da stehen. die sollen sogar da stehen, damit man auch weiß, wozu die überhaupt dienen.
Nur frag ich mich wie funktioniert dies wenn ich vectoren benutze und wie wenn ich Referenzen brauche?
int foo(const std::vector<int>& ints);vorher vector inkludieren.
-
GhostfaceChilla schrieb:
die Fehlmeldung: vector nicht bekannt.
std::
-
GhostfaceChilla schrieb:
int foo(int, int)Wie mein Vorposter schon geschrieben hat, du darfst sie so deklarieren, allerdings musst du die Deklaration mit einem ; abschließen, das geht aus deinem Codeschnipsel nicht hervor, ich wollte nur sicher gehen, dass du das weißt und da nicht der Fehler liegt.
Willst du mal deine beiden Dateien hier posten? (minimal, aber potentiell funktionierend)
-
Ah viel dank, hatt das std:: vergessen^^
-GhostfaceChilla-