C++知识框架解析
作者:李东龙
这几天对c++的学习加上米老师的讲解,对C++有了一些基本的认识!
对c++的学习还是要和vb中进行对比学习,这也是我们在提高班强烈的推荐的学习方法。通过这样的对比学习我们可以讲更多的知识融合到一起,并且把这些知识放入我们的知识网中。
下面将对C++知识进行分析:
从c++语言程序设计教程一书的目录当中看共有13章。
第一章当然是惯有的语言概述,这里就不说了!
第二章也同样是数据类型与表达式,这里基本上和vb基本上一样,具体数据类型的使用还是要在写程序的时候进行了解。还有一些特定的转义字符和一些特有的运算符就需要慢慢的熟悉了。
第三章基本控制结构,和我们之前学习的任何语言都是相同的,只有在语法上有些小的差别,和vb和语法也基本一致。我们就无需费力了,学习了这么多种语言了,只要IDE中熟悉一下就OK了!
第四章进入了我们学习的重点,主要讲的是数组、指针和引用。这里数组从意义上和其他语言一致,从对数组的理解上和java有些区别。从组成上较其他语言多出一部分内容来,这一部分和java又有些相似之处。
下面将这些异同之处逐个的描述一下:
1、 从对数组的理解上说:对于数组的理解,一维数组就是一条记录,也就是简单的一组数。而对二维数组到多维的理解就有了差别了,二维数组在C++、vb、C#中的理解都是一张二维表,而在java中的分析方式发生了巨大的改变是一种思维方式的改变!在java中对二维数组的理解如下图所示:
![](https://img-my.csdn.net/uploads/201203/26/1332771749_8808.png)
就上图所示,三维数组就是在后面再加一层,最后一层上保存的才是真正的数据。无论多少维的数组都可以这样去理解和存储。
而其他语言将三维数组理解成为立体的,那么思维呢,更多维就无法用这样的方式去形象的描述了!
2、 较其他语言数组多出了那一部分,它又是如何出现的?
在vb中只有string类型,从学习C#开始就有了差别。在C#和java以及刚刚学习的C++都引入了字符的概念。当然字符和字符串的理解是很容易的,前者是单个字符,而后者是多个字符的集合。
在其他语言中貌似这两种在使用上string使用更加广泛,两者好像在使用上没有什么太明显的差别。当然了从内存分析的角度来看,而这还是非常不同的,在j2se中有讲解。
但在C++中有个非常特殊的家伙就是指针,在其他语言中还没有见到过使用指针进行编程的。这也许就是C++的独到之处吧,当然了c语言也有,不过没有学习过c语言就不说了。指针可能是使用C++开发最不容易理解的地方,也是C++能够开发底层软件的优势所在!像vb、java等语言开发一些应用软件比较好使!
指针呢,说白了就是个存储对象地址的东西,开发人员既可以对指针本身进行操作,也可以对指针指向的对象进行操作。指针指向的对象也可能是指针。通过改变指针指向的对象不同可以在调用函数实现特有效果!
在指针的基础上还有个“引用”,我个人理解引用就是指针的一个特例,在使用中只能对该指针指向的对象不能对“指针”本身进行操作。我认为引用就是封装好的指针。
指针的使用非常灵活,通过指针可以对数组的操作是非常细腻的,当然了指针还可以控制很多东西,现在对C++的学习还很浮浅,很多功能没有接触过,希望以后需要开发底层软件的时候,进行深入的学习!
引用较指针而言就使用上就简单多了,将其作为其指向对象的别名使用,但是灵活性上就差了很多,二者配合使用就天衣无缝了!
其他章节见下一篇