C++学习问题

原创 2006年06月18日 23:26:00

  入门:

  入门就是要初步对编程的思想有个了解,并且能编程解决一些小问题。入门一定要选好书,难度如果太低了会造成对读者的误导,以为编程就是这么回事;也不能太高深,免的打击读者的信心。既然编程的入门要求是编一些小程序解决小问题,那么就没必要直接学习C++,我觉得循环、判断、跳转、指针才是最基本的编程思想,学通了这些对以后学习C++很有帮助。

  我建议应该先把C扎实地学好,不光要掌握C的语法,因为学习编程的最终目的是解决实际问题,所以还要适当掌握把实际问题与编程联系在一起的能力,我推荐《 C程序设计语言(第2版) 》,这本书是C语言之父写的,不仅详尽介绍了C的语法,还提供了很多实际的小问题作为实例,可以说看了这本书之后能为以后的编程学习打下一个扎实的基础!

  提高:

  学了《 C程序设计语言(第2版) 》后可以开始学习C++,一开始没必要钻很深的大部头书,《 Essential C++中文版 》非常适合初学,一个礼拜就可以看完,看了它可以快速对C++的全貌有个了解,虽然不会马上熟练掌握C++。

  我们不能满足于解决“百钱买百鸡”,真正实现程序还有很多非功能上的问题,比如怎样做才能使用更少的内存?怎样做才能更快?在熟悉一门语言后,一定要认真学习的就是数据结构!数据结构保证了我们的程序能以高效的方式运行。《 数据结构算法与应用C++语言描述 》是本好书,它提供了很多实际的例子,比如火车站调度、走迷宫,相比于“百钱买百鸡”这种问题又提高了一个层次。

  接下来专心提高C++的水平,可以选择《 C++编程思想 》,然后再看《 Effective C++中文版 2nd Edition 》和《 More Effective C++中文版 》,这两本书介绍了高效使用C++的宝贵经验,语言很幽默。至此,你已经可以自称是C++程序员了,恭喜!

  下面介绍几本书,有兴趣的朋友可以选读。如果想高效地使用C++开发软件,STL一定要学!《 C++标准程序库—自修教程与参考手册 》可以帮你学会STL的使用,而且开发时可以拿它做手册,有了前面数据结构的基础,学习STL的使用不会遇到什么困难。如果你还想知道STL的设计思想及原理,不妨看看《 泛型编程与STL 》。有些朋友可能会问,C++的面向对象机制是怎么实现的?《 深度探索C++对象模型 》给了你答案,它剖析了C++底层的实现。最后,如果想有一本C++大百科全书,那非《 C++程序设计语言(特别版) 》莫属!这本书是C++之父Bjarne Stroustrup的大作,算是书中权威。

  再提高:

  到现在为止,你已经熟练掌握C++语言了,现在需要提高的就是设计思想,面向对象(OO)的最大特点是把我们的注意力从系统的执行体系结构转移到概念体系结构,因此利用OO开发大型系统会更轻松。但是经常可以看到人们拿着C++用面向过程的思想解决问题,缺乏的就是面向对象的设计思想,也难怪,在这里之前看的书都没有教你怎样用面向对象的方法开发系统,顶多介绍了面向对象是什么,看了这么多书难免会先入为主,《C语言程序设计》(或者你看的第一本编程书)中的思路潜在的影响着我们。这条鸿沟就由《 设计模式--可复用面向对象软件的基础 》来补救吧!所谓模式就是前人总结出来的、经过千锤百炼的一种系统结构,设计模式展示了23个经典的模式,通过学习、理解,你可以看到什么是真正的面向对象。

  看了《 设计模式--可复用面向对象软件的基础 》后,有时间不妨看看《 重构--改善既有代码的设计(中文版) 》,学了面向对象的设计思想后看它,可以站在一定高度重新审视一下自己的C++编程水平。

  结束语:

  在学习编程的过程中一定要注意多实践!学习时到专业论坛同大家讨论是个不错的办法,你会找到许多热心的朋友与您一起学习,能通过学习编程交些朋友不是更好吗?最后,希望您能成为优秀的程序设计师,为中国软件的发展贡献一份力量!

 

 

相关文章推荐

C++学习笔记问题大全【整理】

C++学习笔记

C/C++学习笔记8:内存中数据对齐的问题总结

1:什么是数据对齐? 数据对齐是指数据所在的内存地址必须是该数据长度的整数倍。...

C++学习:Calc的赋值问题解决了,解决方法:先刷新控件值至相应变量

UpdateData(true); m_edit3=m_edit1+m_edit2; UpdateData(false);UpdateData,顾名思义,是用来刷新数据的。   UpdateDat...

C++学习——父类指针和子类指针的步长问题

C++中父类指针可以指向子类对象,很多时候这的确提供了方便之门。担当遇到对象数组时,就要慎重考虑了。指针运算是按指针类型的长度进行计算的,对于子类对象数组,当使用父类指针指向子类对象时,指针的步长依然...

C++学习笔记第一天:熟悉C++,解决“Cannot find or open the PDB file”问题

昨天偶然看到翁惠玉老师的《C++程序设计思想与方法(第2 版)》。心里总是不平静。以前看C#,看JAVA,太浮躁了。但生活是要沉下去才能品味的到的。今天开始学C++,也正式开始写博客。每天把看的心得,...

C++学习笔记(一)——内存分配问题

内存分配问题 VC调试时按Alt+8、Alt+7、Alt+6和Alt+5,打开汇编窗口、堆栈窗口、内存窗口和寄存器窗口。关于各种变量的内存如下。 VC运行结果: VS运行结果: (1)寄...
  • Jerr__y
  • Jerr__y
  • 2015年10月31日 10:59
  • 170

c++学习笔记fopen问题

vs2015中编程时,遇到如下:  “fopen”被声明为否决的 解释:微软的警告,主要是那些都是C库的函数,很多函数内部是不进行参数检测的(包括越界类的),微软担心使用这些会造成内存异常,所以就改...

C++学习中遇到的问题

一、#ifndef的作用? 以下文件在"os_cpu.h"中。 #ifndef __OS_CPU_H__ #define__OS_CPU_H__  /* 中间有许多定义啦声明啦!;; */...

c++学习笔记(13.专题三经典问题解析)

本节知识点: 1.

C++学习之五、理解C++疑难问题

理解C++疑难问题 1.  引用           专业的C++代码都大量使用了引用。C++的引用是另外一个变量的别名。对引用的修改都会改变该引用所指向变量的值。可以把引用看成是一种隐式的指针,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++学习问题
举报原因:
原因补充:

(最多只允许输入30个字)