=================
<一>
曾经因为自己的一些帖子在网上引起了大家对C++学习和使用的讨论,再回想起自己接触C++三年多,一年前鼓足勇气重新开始再次学习的情景,现在的我心中多了几份感慨,更多的是觉得自己学习的过程颇具普遍性,几次想把自己的一些心得写下来,对自己算是个总结和回顾,对别人即使谈不上帮助但相信也能算是个学习C++的案例分析吧。但开始几次提笔总是过于追求完美,想把所有的东西都写下来,但几次提笔和几次放弃后,我终于打消了“完美”的这个想法,等一下还要和自己女朋友打电话,就这一个小时内,能说多少算多少吧,毕竟我是说出来写下来了。
接触C++是在99年,那个时候自己已经有一些C语言的基础了,刚开始会用的关键字比起C来说也许只多了Class吧,那个时候在学校,也学了VC++,写了几个很简单的游戏程序,然后就因为很多琐事没有再在C++上有更多的深入,这也是我现在非常遗憾的事情,也许那个时候我能够投入进去,现在应该是能颇有小成了。
02年开始了一个新的里程,我自己有充足的来支配时间。就在那一年的暑假,开始了新的C++学习,我知道我以前的基础对于学习C++来说,几乎不会有什么更大的帮助,所以我选择了重新开始,从IF….ELSE这样的语法开始。选择的第一本书是好友友情赠送的《C++ PRIMER》,当时我只是看了不到三天,我就没有继续看了,我知道这本书非常不错,但是肯定不适合当时的我,因为从一开始就有过多的东西给我困惑,类,模板,重载……,这样东西几乎让我放弃学习C++,因为我那个时候觉得自己C还是有一定功力的,就把C搞透对我来说那个时候也是个不错的选择,但毕竟C的内涵无法让我有更多的激情,重复的东西我向来就不喜欢。然后我开始考虑++这个两种语言唯一的标示区别到底意味和蕴涵着什么?同时我开始考虑到底程序设计语言是什么?随后我在图书馆借了本书《程序设计语言的概念和实现》,无论别人如何看待这本书让我明白了很多,因为这本书最大的特点是抽象出了现代程序设计语言的各种语义和其中蕴涵的思想,让我对语言本身这个概念有了更深刻的认识,让我建立去了各种语言自身的不同的语法都代表实现一种对于所有语言都共有的语义,而一个富有逻辑的语义系列却反映出了更一般的程序设计思想。在有了这个概念后,我接触到了《C++设计与演化》这本书,在学习C++过程中这本书对我的帮助是最大的,这本书让我明白了C++的设计理念和各种语言设施所代表的实现语义,既各种纷繁的C++语言特性都是为了实现某种功能并且在不违反C++设计哲学基础上建立起来的。这样的对于C++的宏观基础,让我在以后的学习日子里受益非浅,而《C++设计与演化》这本书我也同时具有中英两种版本,每当我对很多关于C++特性困惑的时候我都会把英文版(随便炫耀一下,这本书上有B.S的亲笔签名:))拿出来,再好好的看看。就象前阵子对于C++的学习,可谓讨论颇多,我自己也再次把这本书拿出来,评价自己所持有的观点是否正确。从此我认为自己算是走入了学习C++正确道路。
10月B.S来到中国,那个时候的我对于C++可以说只是个完全初学者(呵呵,给大家举个例子,那个时候我在杭州碰到了cber,他开始告诉我他的网名,我却说你的姓名是什么?后来他写下他的名字和联系方式我却还不知道我对面站着的是个C++顶尖高手,幸亏那个时候的我还和他合影了一张相片,这算是我比较明智的地方吧,至少没有留下遗憾。)我虽然是个初学者,但我不认为我应该错过这次和大师亲密接触的机会(尤其是在反复拜读过他的书和大部分论文后),自费来到杭州(其实也花了不少那里同学的钱:))听了B.S在浙大的报告,我很早就去了,坐在第一排,整个报告会也是我第一个问问题,回想那个时候我的问题多少显的幼稚,但我告诉自己无论自己现在怎么样,这样的机会一辈子也许不会有了,所以我始终保持了十分积极,B.S的答复十分详细以至与我到后面就基本处于假听的状态:》