Объявление переменных-членов в заголовочном файле интерфейса классаC++

Программы на C++. Форум разработчиков
Anonymous
Объявление переменных-членов в заголовочном файле интерфейса класса

Сообщение Anonymous »

Имея опыт работы с Java и C, в настоящее время я изучаю C++ по старой, но хорошей книге, в которой объясняется, что все члены класса, включая переменные, должны быть объявлены, но не инициализированы в заголовочном файле интерфейса.
Здесь есть много вопросов и ответов по этой теме, например, этот, объясняющий это, но не могли бы вы подтвердить, верны ли следующие утверждения?
В первой программе у меня есть такой интерфейс класса:

Код: Выделить всё

class OCR {

private:

httplib::Response &res;

tesseract::TessBaseAPI *api;

struct Pixa *pixa;

// some private functions

public:

OCR(httplib::Response &res);

~OCR();

// some public functions

};
  • — это объявление ссылки на объект. Без & это была бы инициализация, что совершенно неправильно.
  • — это объявление указателя на (большой) объект, размещенный в куче с помощью new.
  • также является допустимым объявлением указателя на структуру C, выделенную в куче с помощью malloc..
Я думаю, все это довольно очевидно, и программа работает нормально, но было бы неплохо подтвердить это конкретным примером.

Подробнее здесь: https://stackoverflow.com/questions/798 ... eader-file

Вернуться в «C++»