这是我的问题: HumanSpadesPlayer继承自SpadesClient和ViewEventListener(它实现了ViewEventListener)。
问题在于:
HumanSpadesClient::HumanSpadesClient( CardView* view )
: m_view(view)
{
if(m_view)
{
m_view->addListener(this);
}
}
调用addListener方法会导致实际向其添加NULL,因为尚未构造HumanSpadesClient的那部分,因此这不起作用。
除了通过创建这些对象的类调用addListener外,还有其他方法吗?
由于
我的意思是编译器动态地将HumanSpadesClient转换为ViewListener,结果为NULL。
当迭代为NULL时,它不会添加空值_vfptr,但如果我手动设置它则不会。