C4430 отсутствует указатель типа — предполагается, что int

Я пытаюсь закодировать функцию Put-Call Parity в производном классе CallOption и PutOption.
Я хотел бы, чтобы эта функция передавала ссылку на объект в качестве аргумента.

Это подпись функции в CallOption.hpp

double PCParity(const PutOption& put_option) const;

и так же в PutOption.hpp

double PCParity(const CallOption& call_option) const;

Я, конечно, включил CallOption.hpp в PutOption.hpp и взаимно.

Но я получаю следующие ошибки:

  • идентификатор PutOption не определен.
  • отсутствует указатель типа — предполагается int. Примечание. C ++ не поддерживает default-int.
  • синтаксическая ошибка: отсутствует ‘,’ раньше &

Означает ли это, что я не могу вызвать два производных класса одновременно во время компиляции?

Любая помощь очень ценится. 🙁

0

Решение

Спасибо @drescherjm за комментарии, пока вы отвечаете, я продолжал искать решение моей проблемы. Как вы сказали, я должен использовать предварительную декларацию, как указано здесь:
Что такое предварительные объявления в C ++?.
На самом деле я должен включить CallOption.hpp в PutOption.cpp и аналогично для класса CallOption. Затем объявите в верхней части CallOption.hpp, следующее:

Class PutOption;
Class CallOption: public Option
{
}

Большое спасибо 🙂

0

Другие решения

Других решений пока нет …