C++的难学在于它的知识点太多,太繁杂,然后又很面向底层,需要考虑内存,指针这些,但在如今的软件开发中,又由于它的高性能,让其在很多很有前景的领域,例如游戏,金融,人工智能等等,有很大的市场,而且,C++的待遇工资都是偏高的,所谓重赏之下必有勇夫,我们今天简单看看C++的知识体系,瞧瞧C++到底有多少东西
C++封装:
封装包括了类和对象的封装,类和对象本身有数据成员,成员变量,还有成员函数,成员方法,我们必须清楚静态变量的生命周期,类默认的成员函数有哪些,例如构造函数,析构函数等等,以及精通成员函数;
同时,对象本身我们也需要有概念,例如对象的大小是怎么计算得到,对象和类是什么关系;
此外,还有friend友元函数,inline内联函数,也都属于C++的封装特性
继承和多态:
这是面向对象的另外两个特性了,学习C++的人员,需要掌握它的继承机制,比如public继承,protected继承,private继承,都有什么区别,对子类的使用规则有哪些,单继承和多重继承是什么意思?
在多态上,比较难以理解的就是虚函数,纯虚函数,他们的区别在哪里,特别是,需要在内存访问和地址分配上去辨别,这样就会知道天猫的核心本质;
内存管理:
这是最难最大的一块了,需要彻底理解各种操作符,例如new,delete,malloc,free,对内存是怎么操作的,区别在哪里,再有就是new[],delete[],需要深度掌握;还有智能指针,智能指针怎么管理内存资源与分配.
模板Template:
模块是C++里很大的一块了,它可以不少PHP概念里的模板,而是对类,对象使用上的模板,模板可以说是泛型编程的基础,泛型编程,有点像函数式编程的思想,完全不管类型,拿起来就用.
以上这几点,其实都是C++很难的部分,要理解掌握不容易,要想精通C++,就需要对它们下狠功夫才行