Effective C++ 学习

Effective C++

作为一名代码小白,从今天开始记录自己学习的点滴。

条款1:视C++为一个语言的联邦

如何去理解C++这门编程语言,同样是面对对象的编程语言,目前还真不知道如何去探讨这个话题。毕竟自己还很菜,写了点代码,却不能完全理解这门语言。
书中说:“最简单的方法是将C++视为一个由相关语言组成的联邦而非单一的语言。”
什么意思呢???
就是说C++是一些语言的结合体,这些语言构成了我们经常使用的语言,当然这些次语言也是我们从事C++开发将会经常用到。
这些次语言为以下四种:

  • C。C++以C语言为基础。我们所熟知的区块、语句、预处理器、内置数据类型、数组、指针统统来自于C。当然因为C语言的局限性,没有模板、没有异常、没有重载……
  • Object-Oriented C++。面向对象的语言,封装、继承、多态。
  • Template C++。所讲的也是C++种的泛型编程。
  • STL。它是Template程序库,对容器、迭代器、算法以及函数对象的规约有极佳的紧密配合和协调。

心得:
所有的书大体一样,每本书的第一章总是看起开那么的无关紧要且很难读懂,感觉是在讲废话。作为C++编程想要达到一定的高度,在真正落地时解决问题,Effective C++这本书也是必须要看的了,希望自己可以一如既往不断更新自己的博客,不断学习。
从条款1,可以清楚地认知到,.C++编程包含了四种语言,将四种语言组织在一起,作为一名菜鸟对前两者有所认知,也是我们写代码过程中经常用到的知识点。对于包含C语言,有些人总会认为怪怪的,认为C++是一门面向对象的编程语言而C则为面向过程,两者到底区别在哪,难道就是在C的基础上加上了面对象。其实,作为一种语言Java也好,Python也好,面向对象最终还是要借助面向过程去解决问题。对于成员函数内部的实现方式,我们作为一名码农不还是通过面向过程,一步一步地流程去解决这个成员函数所面临的实际问题。
因此,C++包含C,或者说和C有多大关联,其实关联与其他语言相差也不大,应该说所有面向对象的语言也都是要借助面向过程来编程的。这里鉴于自己书读的还是很少,不去深入剖析面对对象与面对过程真正的区别,主要还是自己抱有一种敬畏心。
当然想要一直从事于C++编程,语言联邦的后两种语言,应该深入地了解,这也是网上其他大佬的建议。加油,一起去深入理解她。

你可能感兴趣的:(Effective C++ 学习)