方面组织加载/保存功能的方式,我有一个类定义了数据库的历史提取:最好的静态/非静态
class ExtractionConfiguration
{
string ExtractionName;
time ExtractionStartTime;
time ExtractionEndTime;
// Should these functions be static/non-static?
// The load/save path is a function of ExtractionName
void SaveConfigruation();
void LoadConfiguration();
}
这些ExtractionConfigurations需要保存/从磁盘加载。根据静态/非静态组织保存/加载函数的最佳方式是什么?对我来说,很明显SaveConfiguration()应该是一个成员函数。然而,随着LoadConfiguration(),它更有意义调用
ExtractionConfiguration newExtraction;
newExtraction.LoadConfiguration();
,并有一个临时的空实例或使负载功能静电
static ExtractionConfiguration LoadConfiguration(string filename);
并调用
ExtractionConfiguration newExtraction = ExtractionConfiguration::LoadConfiguration(filename);
这对我来说感觉更加整洁,但打破了加载/保存机制的“对称性”(这甚至是一个有意义/值得考虑的问题?)。
我想询问“最佳”答案有些天真。我真的想要更好地理解这里涉及的问题。
P.S.这是我的第一个问题,所以如果我没有正确表达,请让我知道,我会尽量让问题更清楚。
欢迎。要将代码格式化,可以通过4个空格或1个选项卡缩进代码部分。请参阅http://stackoverflow.com/editing-help。 – kennytm 2010-02-23 11:26:41
谢谢Kenny,我很确定*我错过了格式化技巧! – 2010-02-23 11:30:51
您应该使用较短的名称。例如。只需保存并加载,因为他们已经在课堂上了。不是每个人都使用Intellisense :) – Tronic 2010-02-23 11:34:24