要想从面向结构的思想转化为面向对象的思想,首先要精准的理解何为面向结构和面向对象的编程。
结构化编程(structured programming)将分支(决定接下来应执行哪个指令)限制为一小组行为良好的结构。C语言的词汇表中就包含了这些结构(for循环、do-while循环和if else语句)。C语言使用自顶向下(top-down)的设计。理念是将大型程序分解。分解成小型、便于管理的任务。其中的任务又可以再分解,直到易于编写的模块。C语言鼓励程序员开发程序单元(称为函数)来表示各个任务模块。结构化编程反映了过程性编程的思想,根据执行的操作来构思一个程序。
结构化编程提高了程序的清晰度、可靠性,并使之便于维护,但在编写大型程序时,仍然面临挑战。面向对象编程(OOP)提供了一种新方法。与强调算法的过程性编程不同的是,OOP强调的是数据。OOP不像过程性语言那样,试图使问题满足语言的过程性方法,而是试图让语言来满足问题的要求。其理念使设计与问题的本质特性相对应的数据格式。
C++中,类是一种规范,它描述了这种新型数据结构,对象是根据这种规范构造的特定数据结构。OOP程序设计首先设计类,它们准确的表达了程序要处理的东西。...
>> 阅读全文