|
1
8
一个原因是为实现某种长度概念的所有容器提供相同的接口。(例如
在这种情况下
虽然这确保了整个标准库的一致性,但这一设计选择背后还有另一个原因……
该吸气剂可防止
将尝试写入超过容器拥有的内存实际结尾的内存。由于这一关键要求,对
哲学 在库代码中使用这样的getter绝对是件好事(疯狂的人可能会试图修改它!).
然而,我们应该以最小化getter/setter需求的方式设计代码。一个类应该尽可能地独立于它自己的成员。这些行动应该通过各种方式向公众公布。这里我指的是
做有用的事
--不仅仅是一个简单的返回/设置变量的ol getter/setter。尤其是setter可以通过使用构造函数或方法使其成为冗余的。
因此,
|
|
2
3
这个
我的想法是
当您调用
如果
在其他一些编程语言(如javascript)中,数组或向量的api特别允许您通过设置
保持所有字段私有并使用getter方法
[1]实际上,在这个数据结构上建立了抽象层,因此 looks a little different . |