Я пытаюсь закодировать функцию 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 и взаимно.
Но я получаю следующие ошибки:
Означает ли это, что я не могу вызвать два производных класса одновременно во время компиляции?
Любая помощь очень ценится. 🙁
Спасибо @drescherjm за комментарии, пока вы отвечаете, я продолжал искать решение моей проблемы. Как вы сказали, я должен использовать предварительную декларацию, как указано здесь:
Что такое предварительные объявления в C ++?.
На самом деле я должен включить CallOption.hpp
в PutOption.cpp
и аналогично для класса CallOption. Затем объявите в верхней части CallOption.hpp
, следующее:
Class PutOption;
Class CallOption: public Option
{
}
Большое спасибо 🙂
Других решений пока нет …