Понимание использования ключевого слова Class в этом случае [duplicate]

0

Я читал через исходные файлы VTK, я заметил, что в некоторых заголовочных файлах выполняются инструкции.

class vtkArray;
class VTKIOCORE_EXPORT vtkArrayWriter : public vtkWriter
{
    //Interface description here.
}

Я был озадачен выражением "класс vtkArray". В чем смысл этого заявления? Для чего он используется, когда самое подходящее время для его использования?

Этот код из файла заголовка.

  • 3
    Посмотрите forward declaration . stackoverflow.com/questions/4757565/c-forward-declaration
  • 0
    Я бы не согласился с классификацией моего вопроса как «уже ответил». Конечно, предварительные декларации - это концепция, которая подробно рассматривается здесь. Но введение концепции и раскрытие концепции конкретного конкретного примера - это две разные вещи. Мой вопрос - пример последнего, в то время как другие посты - примеры первого.
Показать ещё 1 комментарий
Теги:
vtk

3 ответа

0
Лучший ответ

Это декларация. Он используется главным образом, когда вам нужно объявить тип класса без указания его внутренней формы. Это полезно при работе с указателями или ссылками в качестве таких утверждений, как:

type* x;
type& x;

не требует от компилятора знать размер type.

0

Это в файле заголовка? Они объявляют класс vtkArray. Таким образом, им не нужно включать заголовочный файл, содержащий этот класс. Затем они могут просто включать заголовочный файл в файл.cpp.

Изменение: Ссылка на объяснение форвардной декларации

  • 0
    Кибер, да, это было из заголовочного файла.
0

Это выглядит как форвардная декларация. http://en.wikipedia.org/wiki/Forward_declaration Это необходимо, если вы хотите использовать класс до его определения.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню