我需要在 C++ 中为一个类实现一个接口,在该接口中我需要询问与两种集合相关的事件,比如这里的人和动作。我需要在所有可能的组合中询问人员标识符和操作标识符(全部,仅指定一个标识符或同时指定它们)
选项 1)
// Asks for all events occured for every combination
int getNumberofEvents(float param1)
// Asks for all events occured for idPerson AND all possible value of idAction
int getNumberofEvents(int idPerson, float param1)
// Asks for all events occured in idAction AND all possible value of idPerson
int getNumberofEvents(int idAction, float param1)
// Asks for all events occured in idPerson AND idAction
int getNumberofEvents(int idPerson, int idAction, float param1)
此选项一目了然,但我需要为每种可能的组合实现不同的接口,因此如果我包含一个新标识符 (2³),将有 8 种方法。
选项 2)
static const int ALL_PERSONS= 0;
static const int ALL_ACTIONS= 0;
int getNumberofEvents(int idPerson, int idAction, float param1)
对于这个选项,只有一个方法接口,但我引入了一个公共幻数来搜索“所有可能的 id”
关于可用性和进一步的可维护性,现在我想到这将是这两者之间的最佳选择(当然,还有其他更好的选择,我不包括在内)。
谢谢。