【发布时间】:2013-12-09 15:09:48
【问题描述】:
我的编译器抱怨我将一个对象声明为不同类的私有成员(如下所示)给了我这个错误:
私人:
ForwardStrategy::ForwardStrategy* forwardStrategy; ForwardToStrategy::ForwardToStrategy* forwardToStrategy;
/home/ics45c/projects/p4/src/Person.hpp:45:19:错误:对“ForwardStrategy”的合格引用是一个构造函数 可以声明构造函数的地方的名称而不是类型 ForwardStrategy::ForwardStrategy* forwardStrategy; ^ /home/ics45c/projects/p4/src/Person.hpp:47:21:错误:对“ForwardToStrategy”的合格引用是一个构造函数 可以声明构造函数的地方的名称而不是类型 ForwardToStrategy::ForwardToStrategy* forwardToStrategy; ^
产生了 2 个错误。
所以看起来编译器认为我指的是构造函数而不是类型,但我不确定如何纠正这个问题......
对糟糕的格式感到抱歉...我不太确定如何正确执行此操作,但在此先感谢!
【问题讨论】:
-
如果你只写
ForwardStrategy* forwardStrategy;而不是ForwardStrategy::ForwardStrategy* forwardStrategy;会不会起作用,因为我认为最后一个是指类的成员而不是类本身(作为新定义的类型)
标签: c++