C++ 编程心得

一直以来都是在钻研C语言,觉得C语言比C++语言要简单的多,而且,C语言能够更容易理解。最近,在使用C++语言来实现某些算法,发现C++语言在使用方面要比C语言优秀的多,不是因为C++屏蔽了指针的使用,而是C++语言一直在进步(这点是我最看重的)。到现在也有了auto关键字,智能指针库,线程库等等,总之,你会发现C++基本上在基础算法和数据结构方面给你提供了最大限度的帮助(当然,这部分的内容是要学习的)。C++在应用框架方面缺失的比较严重,比如,网络编程方面的库,文件解析的库等等,C++都没有提供(针对这个现象,我个人的理解是,C++这门语言应该更注重对算法的考量,这是这门语言的优势,对于其他外围的框架,我个人的方法是使用PYTHON作为我的第二门语言,这门语言最大的特点是提供了大量的第三方的库)。

1. 为什么函数参数的传递方式使用&引用的方式?
:首先,我们要明白一点,并不是所有类型的参数都是使用引用的形式,因为引用形式尤其本身的特性,另外,C++并不排斥使用指针型的参数。
基础数据了类型(int,char等)C++不推荐使用引用型参数,当然,如果你想获得返回值,我们还是可以使用引用型参数。
如果您仅仅是想使用函数参数的值,而不是修改他的内容,我们推荐使用const &的形式,因为这种形式我们可以使用临时对象作为函数参数的值,如果是单纯的&引用形式,我们必须定义一个对象,然后用这个对象进行参数传值(这个特点我花了将近5年的时间才弄明白,不知道是不是自己太蠢了,还是自己太不仔细了)。
最后,因为STL11已经提供了智能指针,所以对于指针的方式,我渐渐的淡化了,不过,指针的操作我还是有了解的。智能指针的使用可以参考Huffman编码一文。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容