【发布时间】:2013-04-04 07:39:07
【问题描述】:
我试过这个没用:
void Map::OnLMClick(short xPos, short yPos)
{
SObject* pSObject = pEditWindow->GetSelectedItem();
if (pSObject==SOTile)
{
/* Do */
我试过这个作为测试:
SObject* EditorWindow::GetSelectedItem()
{
return pSOTile[1]; //pSOTile[1] is a valid pointer, member of EditorWindow
}
SOTile 类是基类 SObject 的子类。那么,是否有可能创建一个 Base* 以返回其子 * 之一,然后让程序根据返回的子对象做出不同的反应?如果是这种情况,我如何才能访问不是 base 成员的子项成员?
【问题讨论】:
标签: c++ oop class pointers inheritance