Unterschied zwischen "deklaration" und "definition".
-
Für Klassen und Funktionen wird eine Deklaration zu einer Definition, wenn ein in {}-Klammern eingeschlossener Körper folgt.
Wäre danach nicht aber
[cpp]
class A
{
[...]
}
[/cpp]
auch eine Definition?
-
Mis2com schrieb:
Für Klassen und Funktionen wird eine Deklaration zu einer Definition, wenn ein in {}-Klammern eingeschlossener Körper folgt.
Wäre danach nicht aber
[cpp]
class A
{
[...]
}
[/cpp]
auch eine Definition?Mal von dem fehlenden Semikolon abgesehen, *ist* das eine Definition.
Nämlich eine Klassendefinition.Eine Klassendeklaration sieht so aus:
class Foo;
Insofern hat Herr der Dinge mit der Ausssage:
Wenn du z.B. eine Klasse deklarierst, schreibst du ihren Code in eine .h Datei(OK, muss nich sein aber in eine Headerdatei is immer besser), sodass der Precompiler weiß wie die Klasse "aussieht".
unrecht. Was du für gewöhnlich in die h-Datei schreibst ist eine Klassendefinition.
Nebenbei: Wer ist der Precompiler? Ich kenne nur den Präprozessor und dem ist es wurscht wie eine Klasse aussieht.
-
Ja verzeihung dass ich lebe, ich werde dir, meinem neuen Gott sofort eine Herde Schafe opfern!
-
So einer schon wieder ...
-
-
Ich bin Euch wirklich verflucht Dankbar für die Infos, nur könnt Ihr das auch irgendwie in 2 oder 3 Sätzen erklären???
Ist für ein Anfänger ein wenig leichter
-
Deklaration: Erwähnung dasses deine Klasse/Funktion gibt
Definition: Ihr einen "Körper" zuweisen
-
Herr der Dinge schrieb:
Deklaration: Erwähnung dasses deine Klasse/Funktion gibt
Definition: Ihr einen "Körper" zuweisenWenn ich das richtig verstanden habe, heisst das, dass
Deklaration = erstellen
und
Definition = Werte zuweisen
richtig?
-
Nein. Mit deiner Terminologie: Deklaration = Bekanntmachen, Definition = Erstellen, Initialisierung = Anfangswertzuweisung.
-
ich möchte noch darauf hinweisen, das eine Variable mit
extern int i;
deklariert, und dann mit
int i;
definiert wird.
Mit einem blossen
int i;
wird deklariert und definiert.