C++ 的强悍, 自然是不言而喻, 在这边写很多的大型程序也用, 这几天我测试了一下C++ 和 perl 的IO 速度, 其实差不多, 可能是由于 perl 里面写起来简单, 而且用 正则 非常顺手, 所以处理文本更多的使用perl, 但是对于数据结构的构建, 则不是perl 处理起来方便的了, C++ 则刚刚合适. 我和一起的几位同事都有这样的想法, C# 其实只能用来表示表示界面而已, 其实我觉得C# 比 C++写起来简单一些, 而且没有那么多容易出错的地方. 前些天一位同事就由于 C++ 的 operator 的问题, 好久没有解决.
问题是这样的, 她在 operator = 的时候没有写成 this , 而是用了一个 temp 变量
Derived& Derived::operator=(const Derived& rde)
if(this == &rde)
return *this; // may be (*this) == rde if needs.
Base::operator=(rde); // if Carrot derived from Barley
... // assignments every memeber of Derived.
return *this; // you must return *this, if not there must be some mistakes happen
}
在perl里面我还没有遇到这样的问题, 所以就不在这里赘述了.
下面是一个比较好的 关于C++ 的 operator 介绍以及用法的网址:
本文对比了C++与Perl在IO处理和数据结构构建方面的优劣,并详细介绍了C++中operator=的操作细节及其注意事项。通过一个具体的例子说明了如何正确地实现赋值操作符以避免潜在的错误。

被折叠的 条评论
为什么被折叠?



