C++面向对象的知识,不能从C++里学到,必须需另外学习,先学习一些面向对象编程的概念,理论,再学习C++比较好,不然直接学习C就可以了,没有必要还要学C++;
C++,有3种编程模式
1)C的面向过程的编程模式,模块化,和函数为主要内容。
2)C++新添加的面向对象的编程模式。主要内容是类。
3)C++新添加的泛型的编程模式。主要内容是模板,用于代码逻辑的复用。
类 --对象: 实现 数据和算法的 封装;封装,继承,多态,是面向对象的主要特征。
其中数据称为属性(C++成员变量),算法称为方法(C++成员函数)。
虚函数用于实现多态,纯虚函数用于定义接口;虚拟继承用于多继承避免钻石菱形;
public,private,protected,friend 等成员的可见性属性用于完善封装。
public 继承用于实现类的 is a(是一个) 关系。
private继承用于实现类的 has a(有一个)关系, 或者implement by(通过这个类实现另一个类)
implement by 也可以通过组合实现。
protected 继承。。。。。????这个不知道能干什么!
public,private,protected 定义类的成员的外部可见性;
类以外不能看到private成员;
protected 成员 派生类可见,其他外部类和函数不可见。
public成员,任何可以看到类名的地方;的类和函数都可见。
friend 其他类或函数,能否另外赋予对保护和私有成员的额外可见性;加了表示可以,没加不可以。
PS:
1)类是C++实现封装的方法。
2)指针(引用)和虚函数,继承是C++实现多态的手段。
3)模板类,和模板函数是泛型的主要特征。标准模板库就是泛型的最好注脚。
4)另外C,C++新增了异常处理。
5)c++的引用类型和引用参数传递。
6)不再需要在代码开头定义变量,变量可以在使用的时候定义,可以定义在代码的任何地方。
7)static 的新增用法,类的的静态成员变量和成员函数
8)const 常量可以是真正的常量了,可以定义数组大小了.
C++最难的最精髓的部分就是类。
类的多态性,封装性,继承性。
我推荐的是看一套完整的C++视频教程,然后稍有点基础了,可以看最经典的《C++primer》
学编程是写出来的,不是看出来的。
一定要多动手写代码,即使在简单的也要用不同的方法给写出来,祝学习顺利。
可加腾讯9814-55795交流学习。
C++算是面向对象的,还是多敲代码,然后转化为自己的思想,如果时间充足,最好去图书馆找本适合自己的书,做点东西,时间长了就熟了,这方面的书很多……只要精通一本就行了
C++的难点和重点都是类,多态和继承