摘要:
从基类派生出新的类时,往往会添加新的方法,当该类的对象以基类指针的形式表现出来的时候,我们就无法调用这些的新的方法了。从概念上来看,是因为行为绑定到类型上,父类自然无法调用子类新的行为。在面向对象编程中,行为与类型耦合的比较紧密。组件系统将对象与行为解耦,所有对象都表现为组件指针,所有行为都表现为接口指针。通过查询接口来获取行为。所有组件都从工厂类产生。以下是示例代码,代码是从游戏编程精粹里修改而来。首先我们需要一个类型标识类,因为当对象都表现为组件指针时,只有依赖类型标识类才能区分。 1 /*-------------------------------------------------- 阅读全文