1
11
何时使其成为成员函数:
何时使其成为独立函数
|
2
14
赫伯·萨特说:“如果可能的话,我们想让他们成为非会员的非朋友”,他比我聪明。 |
3
13
好吧,两者都有论据。 有利于非成员函数:
有利于使事物成为成员函数的是:
还有…就是这样。 (但这一论点不应被低估。代码可读性很重要,如果人们发现更容易阅读成员版本,这是一个有利于它的有力论据。它只是不能产生更好的代码。从一个严格的“更好的代码”的角度来看,如果可能的话,应该优先选择非成员。 |
4
4
在这种情况下,我将使用一个成员函数。 我遵循的规则是,如果函数必须访问实例当前状态的内部内容,那么它应该是类的“领域”的一部分。 在这种情况下,A和B的连通性取决于对象实例的状态。 当然,你最终可能会得到一个职责太多的班级。在这种情况下,keep it-simple(保持简单)因素起作用,您应该考虑您的类是否试图做太多。这样就可以方便地拥有一个单独的类(比如,在您的例子中,一个连接的nessEvaluator),它的特定角色是保存可以遍历并对迷宫实例执行操作的算法。 |
5
3
我总是提到 FAQ 13.9 . 这不是一门精确的科学,而是一门基于判断力的科学。
当您需要访问类内部构件时,您应该使用一个成员,这过于简单化了。值得注意的例子是流插入/提取操作符(
在你的例子中,
|
6
0
我唯一倾向于做非成员函数的东西是只从成员函数内部调用的东西(不需要在类外部可见),并且可以在类的公共成员和/或少量参数上运行良好。 |
Schadre · C-plus编码错误 2 年前 |
Nithin K · 即使类属性的类型正确,也会获取异常 2 年前 |
amirreza870 · Python OOP-更改类文本 2 年前 |
A_K · 使用cat或打印方法打印部分内容的子集闭包 2 年前 |
Mo Fatah · 如何使用Python类打印数独板? 2 年前 |