来自C++ 中的思考卷。1(P-33):
组合具有很大的灵活性。新类的成员对象通常是私有的,使使用该类的客户端程序员无法访问它们。这允许您在不影响现有客户端代码的情况下更改这些成员。
您还可以在运行时更改成员对象,以动态更改程序的行为。接下来要描述的继承没有这种灵活性,因为编译器必须对使用继承创建的类进行编译时限制。
我们如何在组合运行时更改成员对象?
写类声明的时候不包括对象吗?
class car
{
private:
engine obj;
}
所以,这里的类car
包含类的对象engine
。我们如何在运行时改变它?
还是我错过了一些观点?