学习C++的感触
?
学习了两年的C++,我才敢说自己了解点C++语法。以前总觉得,控制台有什么用,总是想更早地接触界面。慢慢的发现,界面,是用别人封装好的库。大二上,刚接触了C#,发现,界面没有用到什么算法啊。寒假里,也一直在搞c#,做过网站、做过小游戏。等过完年,参加超图大赛,也是用c#的。等比赛一过,才发现,无论做界面还是控制台,算法太重要了。记得,当时写过一个身份验证算法。面向对象的思想太重要了-----封装(包括函数的封装、类的封装)、继承(C++中有多继承、多层继承,C#中有多继承、没多层继承,因此C#中出现了Interface)、多态(虚函数、抽象类、父类指针等等)
其实吧,我没有排斥过C#或者C++,每一种语言都有他的优势。觉得吧,CSDN里面的一位技术大牛说过,学习一种语言是对另一种语言的促进。的确,C++对于我学C#起到了无法形容的帮助,C++的思想博大精深,后来随便翻翻Java,发现也有C++的身影。但是,不可否认的是C#的学习,也对我的C++的学习起到很大作用。像设计模式,尤其是单例设计模式,是我在C#和JAVA中学习的思想,后来我才明白C++中构造函数一直是Public的。当然,我们可以私有化,采用懒汉式或者饿汉式去在队内存中创建一个我们需要的对象。
慢慢发现,当初控制的(也就是C++基本语法)程序写的太差,算法灵魂没有,设计思想没有。值得庆幸的是,在半年前,我规范了自己的代码书写,采用的骆驼命名法,像常量全大写啊,在半年前,重读了下数据结构,发现了STL(标准模板库)这个好东西,大一时,刘老师您也教过,像Vector容器,可惜,现在还没学透,呵呵,继续研究。算法的学习,无疑让我深刻体会到结构的博大。为了更好理解计算机内存机制,学习了堆栈内存的分配,方法区的概念自然是C#中学到的。再后来呢,老师提到了封装动态库,我但是就像我以前写的算法是不是可以用C#封装,于是就在2个月前,数据库实验是做了个班级管理系统,其中封装了一个查询的动态库(C#),这个动态库让我深刻感受到:代码管理,封装库so?important!老师,是学生的一盏指明灯!这句话很对!如果我觉得寒假学过了SQL语法,就不用学数据库,那就大错特错了。李老师教授的内容,是在太丰富了,还没有消化呢,像触发器。
有段时间,放过一段时间的C++,指的MFC。是因为在做项目,用的是C#,没有精力顾及。后来,在一个星期的狂轰乱砸之下,MFC基本摸熟了。其实这得感谢刘老师,因为他的课讲的深入浅出,实验第一,实践第一,我们回过头来再看理论,会有另一番味道!渐渐地喜欢上MFC,也许这就是C++的魅力所在吧。它的变量定义让人着迷,它的消息机制,它的功能强大,尤其是类视图的清晰架构实在是很好。这种面向对象的思想体现的淋漓尽致。以后要学的东西还有太多,但是喜欢上编程,又能怎样,走下去吧!一步、一步来,将C++作为夯实基础的保证书,因为C++实在太强大,包罗万象。我不能说我会编程,只能说了解。期待,地林伟业实习过后,一个华丽的转身。
在这里,谢谢刘东良刘老师您的辛勤工作,我想说,您应该是全校最为学生操劳的老师了。记得,当时在看数据结构,您叫我关书敲代码,吓死我了。谢谢当时的帮助,数据结构才有所进步啊。还有,李伟涛李老师全面支持全班搞开发,这个班主任真好,很负责。编程的路还长,有了蛀牙没事,一定要努力走下去。