0

考虑这个类结构:

class Test
{
   public:

   vector<string> nameList;

   int getNumberOfUsers();
   int getTotalUsersWithFirstAplhabetA() ;

   void sortTheNameList();
}

由于用户可以直接访问用户列表,我是否应该提供一些小的帮助功能,比如查找总用户等,因为这些功能无论如何都可以由用户自己提取?

我假设这些功能做的工作非常小。对于需要更大逻辑的功能(如上面的排序),我提供了该功能。

这是一个好的设计吗?


编辑:

我想知道的是,如果我使用界面中的某些功能向用户提供一些类信息,我是否也应该提供一个功能来取回这些信息的子集?

即使我将 nameList 设为私有,并提供一个getter函数来检索它,我的疑问仍然是一样的。我还应该提供其他较小的功能吗?还是留给用户自己实现?

请注意,检索完整列表是我班级用例的明确要求。但是其他实现不是真的必要吗?

4

1 回答 1

1

Test 类看起来很像一个向量。唯一的区别是过滤器,比如“只有 A 的人”。将列表设为私有,以便您可以添加功能并尝试实现数组接口,以便将其用作数组。

于 2012-08-22T11:57:47.450 回答