![]() |
1
1
我认为答案很大程度上是主观的。如果我们以您的示例为例,提供类的方法或属性以通过行/列引用返回值可能是合适的。这些可以同时实施,例如:
如果数据“行”是有限的,您还可以决定最好直接公开列表:
|
![]() |
2
1
根据您对用法的评论,“主要用例是添加、排序和迭代值”,我可能不允许检索单个元素,而是让用户提供一个函子来处理存储的元素。用C++表示。
如果您需要访问特定的单个元素,您将需要一种不同的方法,或者将其作为这里已经提供的方法的扩展。 |
![]() |
3
1
想想你能摆脱多少吸气剂和定位器。一个健壮的OO设计需要对象之间相互输出行为,而不是数据。例如,人的getter/setter模型的骨架:
下面是一些使用Person的(伪)代码:
以下是如何让一个没有“接受者”或“接受者”的人参与点酒:
我不会说在OO程序中永远不需要getter。但我要说的是:尤其是二传手,应该让你重新思考设计。每次你写一个getter或setter时,让你脑后的声音问你是否有办法让对象导出行为而不是数据。 |
![]() |
4
0
这取决于您打算如何访问行/单元格。 没有一种正确的方法可以做到这一点——您需要决定如何访问它们,并构建您的对象,以您希望的方式使用它们来公开它们。 |
![]() |
5
0
用户需要单个单元格吗?单个行/列?行/列的子部分?
如果用户需要访问复杂的单元格组合,那么这种方法可能效果不太好。 |