在C语言中,其理念是将大型程序分解成小型、便于管理的任务。如果其中的一项任务仍然过大,则将它分解为更小的任务。它鼓励程序员开发程序单元(函数)来表示各个任务模块。结构化编程技术反映了过程性编程的思想,根据执行的操作来构思一个程序。
OOP不像过程性编程那样,试图使问题满足语言的过程性方法,而是试图让语言来满足问题的要求。其理念是设计与问题的本质特性相对应的数据格式。(暂时不太懂)
在C++中,类是一种规范,它描述了这种新型数据格式,对象是根据这种规范构造的特定数据结构。例如,类可以描述公司管理人员的基本特征(姓名、头衔、工资、特长等),而对象则代表特定的管理人员(Guilford Sheepblat、副总裁、$925 000、知道如何恢复Windows注册表)。通常,类规定了可使用哪些数据来表示对象以及可以对这些数据执行哪些操作。
C++:1.优点OOP还有助于创建可重用的代码;2.信息隐藏可以保护数据,使其免遭不适当的访问;3.多态让您能够为运算符和函数创建多个定义,通过编程上下文来确定使用哪个定义;4.继承让您能够使用旧类派生出新类;
一个简单的代码,C++ 之hollw world:
#include <iostream> //预处理器编译指令
int main()
{
using namespace std; //编译指令
cout << "Hello, World!!" << endl; //print
return 0;
}
预处理器编译指令:#include <iostream> 编译指令导致预处理器将iostream文件的内容添加到程序中,iostream中的io指的是输入(进入程序的信息)和输出(从程序中发送出去的信息)。C++的输入/输出方案涉及iostream文件中的多个定义。为了使用cout来显示消息,第一个程序需要这些定义。(C++头文件名不加.h)
名称空间:名称空间支持是一项C++特性,旨在让您编写大型程序以及将多个厂商现有的代码组合起来的程序时更容易,它还有助于组织程序。如一个潜在的问题是,可能使用两个已封装好的产品,而它们都包含一个名为wanda( )的函数。这样,使用wanda( )函数时,编译器将不知道指的是哪个版本。名称空间让厂商能够将其产品封装在一个叫做名称空间的单元中,这样就可以用名称空间的名称来指出想使用哪个厂商的产品。 例:在iostream中定义的用于输出的cout变量实际上是std::cout,而endl实际上是std::endl。 using namespace std; 这个using编译指令使得std名称空间中的所有名称都可用,用这些编译指令替换下述代码后,便可以使用cin和cout,而不必加上std::前缀(简单程序暂时可先不考虑)
用cout输出:cout << "Hello, World!!" 用双引号括起的一系列字符叫做字符串,因为它是由若干字符组合而成的。<<符号表示该语句将把这个字符串发送给cout;该符号指出了信息流动的路径。cout是一个预定义的对象,知道如何显示字符串、数字和单个字符等
endl: endl表示重起一行。在输出流中插入endl将导致屏幕光标移到下一行开头。诸如endl等对于cout来说有特殊含义的特殊符号被称为控制符(manipulator)。和cout一样,endl也是在头文件iostream中定义的,且位于名称空间std中。