例子:
NewItem item=new NewItem();//继承自QGrahicsItem类
scene->addItem(item);
addItem()函数需要的是QGraphicsItem类对象,而传递给函数的是subclass,此时该函数只使用与父类有关的成员变量和方法,不会使用子类的相关数据。
如:
NewItem::NewItem()
{
rectitem=new QGraphicsRectItem(100,100,100,100);
setFlags(ItemIsMovable|ItemIsSelectable);
}
由于setFlags()是子类中的方法,故传递时有作用,Item会有设置的“可移动”和“能够被选取”的属性,而rectitem则不会在addItem中被使用。