西西河

主题:【原创】猛批烂书 程序员面试宝典 上 -- 晨池

共:💬64 🌺96
全看分页树展 · 主题 跟帖
家园 我只是对体系结构比较感兴趣

因为我们做图像视频,很多时候需要用矢量指令,按照cache大小和结构进行优化,所以对体系结构、编译优化都比较感兴趣。有时候需要优化程序,要选择下手的地方,所以得分析编译器的输出,看看瓶颈在哪里。

inline的问题,是各个编译器支持的很不相同。而且如前面有人说的,它仅仅是一个hint。要不要其实不重要。所以现在我写程序基本上不考虑这个。现实而言,Borland的支持很弱,基本上有没有无差别。而且,Borland的编译器要求inline函数必须在头文件中定义,这就导致很多问题。VC支持还可以,且有优化选项,让编译器自动选择小函数做inline。所以差别也不大。其它的用得不多,不是很清楚。

STL的最大问题是它搞得太复杂了,用起来类似于高射炮打蚊子。而且一个非常严重的缺点是,把所有数据结构都搞了一套大致差不多的接口。我用不同的数据结构目的就是用不同的功能,你搞成相同的,我怎么知道你是啥意思啊?所以这玩意对初学者就是满眼的地雷阵。我收上来的作业中,这些错误实在太多太多了。对高手,这玩意又是一个鸡肋,功能虽然强大,但在每次使用的时候,都免不了要写过于复杂的适配代码,而且还没把握写得对不对,更不知道其内部实现算法是否符合预期。还有,不同STL的内部实现差别很大,虽然接口相同,却往往导致不兼容。所有这些问题绞在一起,我非常不建议使用这些东西。再说,实现这些结构都非常容易,每个人都应当有自己的一套库,这样用起来显然是最顺手的,和乐而不为?

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河