gpt4 book ai didi

c++ - 重载运算符以将我自己的类作为标准类处理是一种好习惯吗?

转载 作者:搜寻专家 更新时间:2023-10-31 00:19:34 26 4
gpt4 key购买 nike

我一直在学习 Deitel 的 C++ 基础知识和 mr. Deitel 强调重载标准运算符以向自定义类及其成员提供标准功能。我的意思是例如而不是 cout << object.memberFunction();我可以简单地说 cout << object;

这种技术确实允许链接和更快的输入,但它需要运算符重载实现,即使你我还是个新手,我觉得代码实际上变得可读性差,特别是如果有很多类成员你必须记住哪些是运算符重载等等。没有重载运算符,代码可读性更强,而且您可以保存重载代码。

所以我的问题是我是否应该花时间学习运算符重载?我是 C++ 的新手,欢迎有更多实践和经验的人回答。运算符重载的好处是否会超过实现它的努力和代码可读性的降低?

最佳答案

您当然应该花时间学习运算符重载。然而,这并不意味着您应该或不应该使用运算符重载。但如果不学习,你就无法真正做出决定。决定使用您不熟悉的东西是很困难的,如果不是不可能的话。您总会发现您不了解的东西更难使用,即使它实际上更容易。

话虽这么说,但要根据具体情况做您认为最好的事情。如果在您的情况下,您发现代码因运算符重载而可读性较差,请务必不要这样做。然而,在某些情况下它很有用。但由于通常重载运算符是为了提高可读性,如果您发现它不适用于您的情况,请远离它。

关于c++ - 重载运算符以将我自己的类作为标准类处理是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7913522/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com