玩了快5年java了,现在又开始准备玩c++了,虽然在大本时候都学过了,不过早忘了,所以现在仍然可以看成是从头学起。抽下班时间最近看了看《c++ primer》,又装了vs2005(包括几个常用的插件),跟着msdn2005写了几个hello world,发现c++还是有点晕,呵呵。所以在细致的学习之前还是要先从总体上先把握把握。
c++中的名词也是很多的,特别是使用vs2005,它的wizard也是一大堆。
c++毕竟是一种高级语言,编程时当然也有很多写好的类库可以使用,一般有3大块:
CRT--C 运行时库,它包含了一些很低层的库。(vs2005中也是微软开发的)
ATL--活动模块库,微软开发的一套库。
STL--标准模板库,据说是很好的一套库,也是在不断的发展过程中,它是尊崇c++标准的,是可以跨平台编译的。
MFC--这个名字听得最多了,微软的一套GUI的库。
以上这几种都是类库,实际上我们在采用某种IDE,或是某种编译器时,它都实现了上述的一些库(不是全部),比如STL,CRT,所以说我们在开发c++程序时使用前两种,大体上是能做到跨平台编译的,MS在vs2005中的C++编译器这块的符合c++的标准据说是98%了。
在c++中还有两个常听见的名词动态链接库(DLL),我觉得它是指的一种技术,而不是某种具体的库(太弱了,这个解释,谁叫我刚开始玩c++了);另一个是GP,范型化编程,在jdk1.5中也引入了这个机制,但我们在java中也没看出是多么重要的一个东西 ,不知为什么在c++中作为一个很重要的方面(以后应该能明白)。
总之,玩了几天c++,感觉还是有点晕,一个跨平台的编译整地都挺麻烦的,vs2005也不如eclipse好使,唉!