【发布时间】:2016-10-10 23:57:29
【问题描述】:
我了解到在 OOP 中我们可以使用继承,这样我们就可以从基类派生类。我们称之为“IS-A 关系”,例如:一个人是从人类类派生的。
还有包含意味着一个类包含另一个类类型的对象,所以我们可以说汽车有轮子。我们称之为“HAS-A 关系”。
还有另一种关系称为“IS-IMPLEMENTED-IN-TERMS-OF”,我不确定我是否理解它。是不是指私有继承??
#include <iostream>
using namespace std;
class A {
};
class B : public A {
}; // is-a relationship
class C {
A& aObj;
}; // C has-a relationship
// is implemented in terms of?? and how and when?
int main()
{
A a;
B b; // b is a an A like man is-a human
C c; // c contains an A's object so C has-a an A's part
cout << endl;
return 0;
}
【问题讨论】:
-
@SamVarshavchik 我不明白
-
@SamVarshavchik 您对此有何看法,正如 scott meyers 所说:artima.com/intv/meaningP.html
-
@Syfu_H OP 的问题对我来说似乎完全合理 - 私有继承通常是这样描述的。
-
@templatetypedef 谢谢
-
@SamVarshavchik 现在可以回答时不要冒犯