У меня вопрос о чем-то, что меня действительно смущает!Что такое «классный пример»? означает в файле заголовка?
Давайте смотреть этот код RIGH здесь:
#ifndef HEADER_H
#define HEADER_H
#include <iostream>
class example;
class anything_else;
class A {
public:
A();
};
...
Что class example;
и class anything_else;
значит, пока class A {};
получает объявлен? Внутри файла CPP я видел такие определения, как void example::release() { ... }
и т. Д.
Я действительно смущен, у кого-нибудь есть пример с class example;
...?
Поздравления!
Это [форвардная декларация] (http://en.cppreference.com/w/cpp/language/class#Forward_declaration) класса – UnholySheep
Спасибо, теперь это имеет смысл! В настоящее время важны форвардные декларации? – Lazcano
Это значит, что вы можете ссылаться на объявленный вперед класс до того, как он будет определен. Следует отметить, что если ссылка была определена ранее, она будет неполной. (т.е.вы можете объявить только указатель или ссылочные типы переднего объявленного класса до его определения) – George