西西河

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

共:💬64 🌺96
全看分页树展 · 主题 跟帖
家园 大致知道了

先谢谢您的说明,对我的确是一种启发。

细细想来不过也有一些值得商榷的地方。有点剑走偏锋的感觉。与其用虚的析构函数来完成不同的调用,还不如把虚的析构函数的内容直接写成一个个的函数。这样可读性还强点,工作量也应该差不多。

我在用C++的时候用一个原则,该编译器完成的工作让他去做,该自己干的绝不交给编译器。正如您举出的copy constructor例子一样。只要有诸如内存分配或有static的计数器变量等情况,不管3721先把拷贝构造,析构和operator=写了再说,管他用不用。因为编译器可能在你想不到的情况下会决定用他们。这也是改了自己或别人N次的bug的教训。您这种使用构造或析构属于一种implicit的方式,我更喜欢明示的方式。

不过千万请不要误会,我绝不是说您这种方式不好。编程不高深,但有时也会有点“运用之妙存乎于心”的感觉。就好像楼下的讨论什么时候用指针,还真不好回答呢。

全看分页树展 · 主题 跟帖


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

Copyright © cchere 西西河