C++ 重构,扩展方法 typedef
C++ Refactoring, Extension Methods typedef
我有一个遗留的 c++ 应用程序并逐步重构它。
我遇到了很多 typedef 如下
typedef std::vector<class OrganisationData *> VECTP_ORDATA;
VECTP_ORDATA g_OrganisationData;
目前g_OrganisationData上有很多免费功能在使用。我的感觉是,以前的开发人员应该制作一个 class 并使其更基于对象而不是自由函数传播 everywhere.Currently 我正在将相关函数组合在一起并将其作为静态 class 大约 g_OrganisationData
并在必要时调用静态函数。
另一种选择是将函数组合在一个头文件下并使用它。还有其他最好的选择吗?由于代码的性质,我不能只一步一步地进行更改。
我的建议是将相关函数放在适当命名的 namespace
中,而不是使它们成为 class
.
的 static
成员函数
示例:
namespace RenderAPI
{
// Put all rendering related functions here
}
namespace PersistenceAPI
{
// Put all read from disk and write to disk functions here.
}
namespace MySuperCoolBusinessLogicAPI
{
// Put all the functions dealing with your super cool business logic here.
}
我有一个遗留的 c++ 应用程序并逐步重构它。 我遇到了很多 typedef 如下
typedef std::vector<class OrganisationData *> VECTP_ORDATA;
VECTP_ORDATA g_OrganisationData;
目前g_OrganisationData上有很多免费功能在使用。我的感觉是,以前的开发人员应该制作一个 class 并使其更基于对象而不是自由函数传播 everywhere.Currently 我正在将相关函数组合在一起并将其作为静态 class 大约 g_OrganisationData
并在必要时调用静态函数。
另一种选择是将函数组合在一个头文件下并使用它。还有其他最好的选择吗?由于代码的性质,我不能只一步一步地进行更改。
我的建议是将相关函数放在适当命名的 namespace
中,而不是使它们成为 class
.
static
成员函数
示例:
namespace RenderAPI
{
// Put all rendering related functions here
}
namespace PersistenceAPI
{
// Put all read from disk and write to disk functions here.
}
namespace MySuperCoolBusinessLogicAPI
{
// Put all the functions dealing with your super cool business logic here.
}