Posted on 2007-10-29 19:30
海边沫沫 阅读(5121)
评论(39) 编辑 收藏 引用 所属分类:
高起点C++学习之路
最开始学习C++,是还在学校读书的时候,教材是清华大学出版社的白皮书,用的工具是Visual C++ 6.0。那时,我连一台自己的电脑都没有,每天都要到图书馆去抢位子。直到毕业参加工作后,才有了自己的PC,然而,C++却用得很少了。
没毕业之前,以为C++语法加上MFC就是全部,连STL是什么都不知道。工作后,随着见识的增长,知道了Unix/Linux,知道了开源软件,知道了X Window,知道了Qt和wxWidgets,也知道了boost和ACE,知道了Effective C++和Imperfective C++。我对C++一直不能忘情,虽然日常工作使用的是Java,但我却一直关注着C++。凡是讨论C++的文章,无论是褒奖还是贬低,我都看得津津有味。编译器我也是从Visual C++ 6.0关注到Visual Studio 2005,从GCC 3.3关注到GCC 4.2。硬件也是从单核关注到多核,从32位关注到64位。现在,我决定暂时放下Java,重拾C++,付诸系统的学习并加以实践。以我目前的见识,这可以算是高起点C++学习之路了。
之所以说是高起点,我认为可从以下方面阐述:
1、硬件的高规格,目前的CPU已经全面从32位上升到了64位,从单核上升到了多核。因此,我必须更加注重64位编程,更加注重并发程序设计;
2、操作系统的高规格,目前新版本的Linux一个接着一个,每一个都提供了越来越优越的内核和越来越漂亮的桌面,让人目不暇接;
3、框架的多元化,目前已不仅仅只是MFC的天下,Qt、wxWidgets,每一个都比MFC设计得要更好,STL、Boost这些库也必须得花苦功去学。
4、C++ 0x标准就要出台了,所以更加需要把目前的C++学好用好,不仅要知道C++之所能,更要知道C++之所不能,要和其他的更多的优秀语言进行比较以便知道什么样的语法特色既简洁优美又不失效率,这样才能理解C++ 0x设计小组的苦心孤诣。
好了,不说了,C++ 0x标准的出台还有那么几年,而符合标准的编译器诞生还要再迟那么几年。在这几年的时间里,我得抓紧学习,赶快把自己锻炼成一个C++高手。
Feedback
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 04:37 by
谢谢提醒。
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 08:43 by
并不是都是新的就是高起点
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 08:44 by
弱弱的问一个问题。X windows 是什么东东哦?
你说的都是C++的精华,赞一个!
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 09:20 by
汗……梦在天涯tx……开始怀疑你的……呵呵。
X Windows是Linux/Unix系统下的图形界面系统
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 10:22 by
可惜,C++已经风光不再了
C++的语法……感觉实在和优美搭不上边
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 11:07 by
无所谓风光不风光,好用/满足自己需要就行了
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 11:49 by
和楼主情况差不多,问个问题:wxWidgets倒没学过,请问和Qt相比如何?
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 19:11 by
我大学还没毕业,不错你说的我都听过了。
呵呵,电脑早点有就是好
ACE其实还有ICE呵呵
smartwin也不错的瓦。呵呵
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 19:34 by
做了点C++又玩.NET
现在又回到C++
C++还是王道...
# re: 高起点C++学习之路 回复 更多评论
2007-10-30 20:40 by
虽然一直用的别的语言,但我从学习C++的过程中得到太多东西,所以对C++就有一种特殊的感情。
# re: 高起点C++学习之路 回复 更多评论
2007-10-31 00:36 by
楼主情况和我差不多!
但我觉得,我要是学习C++的话,就会选择COM来学习。
COM的设计还是很好的,很优美!
纯粹的C++不怎么样!语法太多,太不规范,容易出问题!
COM面向接口编程,能够显出面向对象的本质。虽然不能在Unix上运行。但是,我只用Windows!Unix上编写C++程序能够赚钱吗?有市场吗?
真要在Linux上写程序,我也宁可写Java程序!
我写了COM程序以后,就用Java的JNI来调他们!
# re: 高起点C++学习之路 回复 更多评论
2007-10-31 14:13 by
恩,大学里学过C++,尽管现在是用C#,JAVA,但还是对c++,VC,情有独钟,对偏向于硬件编程情有独钟,感觉这些都恨奇妙,有一段时间甚至在研究汇编程序。
感觉语言是其次~真正的是要懂得windows内核,懂得操作系统,懂得可执行文件格式,懂得控件是如何封装如何运作的,懂得COM是怎么以回事就好了。
细节方面用哪种语言是其次的。
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 00:18 by
嗯,受教!阿睿说了,这学期把C++学精...
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 10:11 by
@良少
关于Unix上的C++。。。你真幽默。你好好见识一下Unix和它上面的软件是怎么卖的。还有,你知道gnu的一个全写吗?GNU's Not Unix。为什么Not?去找找看吧。
还有,不要把Unix和Linux混为一谈,尽管二者都是C社区的人搞得东东。
Minix说得对,不是新技术就是高起点,否则的话难道C#和Java不比C++起点高吗?难道C++不比ASM起点高吗?
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 15:46 by
我进来只是支持一下楼主~~~
另外寒一下 良少
"纯粹的C++不怎么样!语法太多,太不规范,容易出问题!
COM面向接口编程,能够显出面向对象的本质。 "
这样的言论不得不寒
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 18:15 by
我可没有说新技术就是高起点哦,是不是高起点主要还是看个人的见识是不是增长了。现在的我比读书时的我,那不知是高了多少了,不管使用的是不是C++语言。
新技术有时候也会带来挑战,如64位、多核、硬件虚拟化技术,我们不得不去面对。
对于COM,难道我不懂吗?不是我吹牛,Windows下的那套在下可精得很啦,MFC、ATL、COM+以及Windows下的多线程和网络编程本人都曾下过苦功,只不过现在兴趣已经远远超过Windows了。虽然我的文中不断出现Linux/Unix字样,也并不代表着只局限于Linux/Unix系统。我关注的,是更具通用性的东西。
高手们都知道,GNU和开源社区的东西,那都是可以跨越很多个平台的!
# re: 高起点C++学习之路[未登录] 回复 更多评论
2007-11-01 18:28 by
顶礼膜拜!
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 20:49 by
一个牛人横空出世~~~
# re: 高起点C++学习之路 回复 更多评论
2007-11-01 20:51 by
空明流转同学太逗了,GNU's Not Unix。为什么 NOT,估计是找不到的
# re: 高起点C++学习之路[未登录] 回复 更多评论
2007-11-01 22:17 by
理论上来说,精通MS ATL MFC com/com+,我不得不说你说的高起点是
不折不扣的,另外我对你精通以上的技术而精通C++有些怀疑。呵呵,没有什么别的意思,但我了解精通的含义。
# re: 高起点C++学习之路[未登录] 回复 更多评论
2007-11-01 22:20 by
MODIFY:
另外我对你精通以上的技术而<add>不</add>精通C++有些怀疑.
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 09:12 by
呵呵,每个人对“精通”的解释都是不一样的,所以这样的现象也不奇怪了。
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 12:26 by
我说过我精通C++吗?我的目标是要把自己锻炼成一个C++高手。
也不要认为我对“精通”有一个很“低格调”的理解,混迹C++世界的高手们都是不敢随便说自己精通的。C++是这样一个东西,你越学得多,越是觉得自己不够,越是想往里面钻研。C++太有吸引力了。
但Windows下那一套很显然不具有这样的特质,搞着搞着就会觉得心烦,因此,对这些技术都下过苦功,能够在自己的项目中熟练应用这些技术,就随便说个“精通”了;但也并不是全都了如指掌了,往上看要能把握整个软件系统的架构,往下看要能明白每个组件的封装细节,那在下确实是大大的不足的。
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 13:53 by
@<a href=
http://minidx.com>minidxer</a>不是我逗,这可是GNU社区的一个提法,呵呵,我上次记得在哪里看到过有详细的将这个的典故的。
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 13:55 by
http://vip.6to23.com/huanggeyang/Dnzl/Linux/Gnu/GNU1.htm这个帖子是GNU宣言。为什么是Not Unix?因为Unix(泛指)是商业系统。无论是大名鼎鼎的MAC OS,还是Solaris,还是AIX,它们都是Unix。它们也都是卖钱的。
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 14:18 by
中文真是博大精通阿~确认了几遍,发现博主原文是"关注"C++,回复中是"精得很",的确没有说过精通~~~~
另外发现一个问题哈,"高手们都知道,GNU和开源社区的东西,那都是可以跨越很多个平台的! "
是不是可以说:
1,知道啥啥啥跨越很多个平台的,就是高手?
2,跨越很多个平台的就是好东西?
呵呵,成立的话那以后我就开始说自己是高手了……
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 14:20 by
另外,GNU的解释是,GNU's Not Unix-->(GNU's Not Unix)'s Not Unix-->((GNU's Not Unix)'s Not Unix)'s Not Unix…… 呵呵,明白了吗?
# re: 高起点C++学习之路 回复 更多评论
2007-11-02 15:25 by
<a href=http://minidx.com>minidxer</a>
不好意思,有很多东西让阁下误解了。
我的第一个回帖,同时对多个人的言论进行了辩解,即辩解了不是新东西都是高起点,又辩解了不要只局限于Windows操作系统,当然,也不要局限于Unix或者Linux系统。等等。
让阁下总认为我在标榜自己是高手,看来是我回帖时太懒惹得祸了。
“高手们都知道,GNU和开源社区的东西,都是可以跨越很多平台的”,这句话只是为了进一步说明不要局限于Windows,不要局限于COM,Windows下有COM这样的好东西,开源社区肯定也有好东西和它对应,而且开源社区的好东西,同样也可以运行于Windows。
至于阁下推论的知道啥啥啥就是高手的言论,那不是我的本意。
# re: 高起点C++学习之路 回复 更多评论
2007-11-06 08:23 by
我也想处理这块
# re: 高起点C++学习之路 回复 更多评论
2007-11-07 12:01 by
“不仅要知道C++之所能,更要知道C++之所不能,要和其他的更多的优秀语言进行比较以便知道什么样的语法特色既简洁优美又不失效率,这样才能理解C++ 0X设计小组的苦心孤诣”——这句说得好
# re: 高起点C++学习之路 回复 更多评论
2007-11-08 00:11 by
希望你能够搭上C++ 0X的航天飞机.........
# re: 高起点C++学习之路 回复 更多评论
2007-11-08 16:06 by
C++很强大,但是现在的人已经不再在意标准C++了。。
# re: 高起点C++学习之路 回复 更多评论
2007-11-09 12:37 by
顶啦·
还在学习C++ 受教!!
# re: 高起点C++学习之路 回复 更多评论
2007-11-13 23:21 by
不会
# re: 高起点C++学习之路 回复 更多评论
2007-11-29 18:10 by
路过~~~
# re: 高起点C++学习之路 回复 更多评论
2008-09-24 23:49 by
哈哈
你还好,学C++,我觉得我学好C就OK了.现在正在回嚼C,还是感觉C好,比较简洁.
C++学不懂,我脑袋不够.
# re: 高起点C++学习之路 回复 更多评论
2010-03-07 16:47 by
看了lz的博文,看来真的要好好学习STL啊,不过STL毕竟还是有起局限性,在实际中还是要构建自己的数据结构。
# re: 高起点C++学习之路 回复 更多评论
2012-09-04 10:48 by
是X WINDOW而不是X WINDOWS,是Linux下的图形化界面@梦在天涯
# re: 高起点C++学习之路 回复 更多评论
2014-07-11 17:55 by
楼上的不要喷楼主了,楼主的文章我大部分都看了,还是很牛的