Mam takie coś
class USphereComponent* CollectionSphere;
Bez słowa klas wiem że mam do czynienia ze wskaźnikiem, a co zmienia to słówko class?
Mam takie coś
class USphereComponent* CollectionSphere;
Bez słowa klas wiem że mam do czynienia ze wskaźnikiem, a co zmienia to słówko class?
USphereComponent *CollectionSphere;
To jest definicja wskaźnika na klasę USphereComponent
. USphereComponent
nie musi być w pełni zdefiniowaną klasą, ale kompilator musi wiedzieć, że jest to jakiś typ. Tzn. musi być jakaś deklaracja co to jest USphereComponent
(np. deklaracja zapowiadająca klasy czy typedef
).
class USphereComponent *CollectionSphere;
To też jest definicja takiego samego wskaźnika. Z jedną różnicą - od razu mówimy, że USphereComponent
jest klasą. Jest to jakby połączenie deklaracji zapowiadającej i definicji zmiennej.
http://en.cppreference.com/w/cpp/language/elaborated_type_specifier
Jedyne co to daje, to że jednoznacznie mówi, że chodzi o typ.