以前有聽說一個叫OCP開放封閉原則的東西,突然想到,
如果我有抽象的Shape跟彼此間可以判斷碰撞的Rect與Circle,
想要在RectX跟CircleX之間加上運算子==而不改動原來的程式碼該怎麼辨?
而我想要一個指標同時有比較碰撞跟運算子==的功能,好像就要用Shape這種方法了。
希望有人有更好的方法,在不修改Shape跟Rect, Circle的前題下,
讓一個像Rect跟Circle的class新增一個函數,而且有函數指標可以同時使用這個新函數跟舊class函數。

讓地獄深紅的天亮 發表在 痞客邦 PIXNET 留言(0) 人氣()