从C语言进阶到C++,是一个跨度,从结构化、模块化的语言进阶到面向对象的语言的过程。
C语言是面向过程的,它要求设计者必须细致地设计程序中的每一个细节,考虑到程序运行时每一刻会发生的可能,例如各个变量的值,什么时候分别输入输出什么东西。如果程序复杂或者项目过大,就会使设计者力不从心。
而C++`由C发展而来,保留了C语言原有的优势,增加了面向对象的机制。例如,制造汽车,全球化汽车厂商可以分别从不同的地方采购发动机、车身、轮胎等,然后进行组装,而不会自己先制造发动机,再自己制造底盘、车声等部件。C++的设计就像全球化汽车厂商一样,不必事实亲为。而这就提高了设计者的效率。
C++的主要的三个特性为:封装、继承、多态。
一个简单的C++程序:
#include<iostream>
#include<string>
using namespace std;
class Student
{
public:
Student()
{
cout << "无参" << endl;
}
Student(int _num,string _name,char _sex)
:num(_num)
, name(_name)
, sex(_sex)
{
cout << "有参" << endl;
}
public:
void display();
private:
int num;
string name;
char sex;
};
void Student::display()
{
cout << "num:" << num << endl << "name:" << name << endl << "sex:" << sex << endl;
}
int main()
{
Student S1(1, "jack", 'm');
S1.display();
}
创建一个类,并显示地写出它的构造函数,然后实例化这个类,在实例化的时候,就会调用该类的构造函数,从而输出相应的语言,而调用函数,需要加上对象名“S1”。