1

我正在尝试在 CallOption 和 PutOption 派生类中编写 Put-Call Parity 函数。我希望这个函数将对象的引用作为参数传递。

这是函数的签名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++ 不支持默认整数。
  • 语法错误:在 & 之前缺少 ','

这是否意味着我不能在编译时同时调用两个派生类?

很感谢任何形式的帮助。:(

4

1 回答 1

0

感谢@drescherjm 的评论,当您回复时,我一直在寻找解决问题的方法。正如您所说,我应该使用此处所述的前向声明: 什么是 C++ 中的前向声明?. 事实上,我应该包含CallOption.hpp在CallOption 类中,PutOption.cpp并且类似地包含在 CallOption 类中。然后,在顶部声明CallOption.hpp,如下:

Class PutOption;
Class CallOption: public Option
{
}

非常感谢 :)

于 2017-02-18T04:15:48.650 回答