C++同时支持OO和OB两种设计。
OO :Object Oriented ,支持多态这一强大的设计机制,需要付出的代价便是额外的间接性(virtual机制)。
OB :Object Based ,非多态的数据封装模型,就是ADT(Abstract Data Type)的概念,和OO相比拥有更快的速度而且空间更紧凑(因为不需要virtual)。例如CString ,String 类
OO和OB的设计其实就是在弹性和效率之间的取舍。
-- 《Inside The C++ Object Model》
原文地址http://hi.baidu.com/sinbh/blog/item/43bb3c54975604193a293590.html