c++ - 将所有函数转换为类

标签 c++ refactoring oop

我正在阅读 Fowler 的重构:改进现有代码的设计一书,其中说用相同名称的类替换函数调用,并调用该类的构造函数来代替原始函数调用。

我的问题是,将所有函数(或多或少,除了非常琐碎的函数)转换为对象以使代码变得更加模块化是否是个好主意?

谢谢,

最佳答案

扩展一下我之前的评论:

在 C++ 中,绝对没有理由将所有 函数变成类,某种处理对象。当您只需要计算并返回一个值时,函数可以很好地工作。

但是,如果您有一个创建内部状态并在其处理过程中在多个地方使用它的大型函数,或者(喘息!)将一些状态存储在全局变量中,该函数可能是变相上课。在这种情况下,最好将状态存储在一个类对象中,让几个较小的成员函数在该公共(public)状态上执行它们的工作。

另一方面,根据其参数计算值的函数不会通过将其放入类中得到改进。

关于c++ - 将所有函数转换为类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5727790/

相关文章:

javascript - 计算另一个对象中匹配的对象

c++ - 在屏幕截图中包含鼠标光标

c# - 在 C# 应用程序的 DLL 中使用 CUDA

c++ - 在参数化构造函数中将数组作为参数传递

java - 使用 JSch 库在 Java 中获取 session 和 SFTP channel

php - 使用 PHP 的 OOD 与基于功能服务的架构

C#.NET - 继承 - 在内存中创建的对象数

c++ - 如何正确使用 GMP 来执行此操作?

android - Android Studio 重构和基本搜索/替换之间有什么区别?

c# - 批量重构 C#