Итак, благодаря этому сайту я нашел ответ на свою предыдущую проблему. Я добавляю функцию к классу в проекте GNU automake, который использует указатель на объект doc
. В файл Makefile.am были включены зависимости doc.h
и plsa.h
в соответствующем порядке. Однако при компиляции я получал сообщение об ошибке doc не был объявлен
. Затем я попытался добавить сюда оператор #include, который дает предыдущее переопределение ошибки 'class doc'
.
Я узнал, что мне нужно объявить документ
, используя строку class doc;
, закомментированную ниже; однако я думал, что это было необходимо только в том случае, если я объявлял функцию, которая передает объект по значению. Может кто-нибудь объяснить мне, почему #include в данном случае неверно?
#include "doc.h"
//class doc;
class plsa {
// ...
int infer(doc *trset, int maxiter, double noiseH);
}