类是关于继承和组合的。是否使用const
与最小权限原则相关的关键字?
我了解继承和组合,我了解它们,但是最小特权原则呢?谁能向我解释一下,以及如何修正我的代码以包含最小特权原则?
class A {
int i;
public:
A(int ii) : i(ii) {}
~A() {}
void f() const {}
};
class B {
int i;
public:
B(int ii) : i(ii) {}
~B() {}
void f() const {}
};
class C : public B {
A a;
public:
C(int ii) : B(ii), a(ii) {}
~C() {} // Calls ~A() and ~B()
void f() const { // Redefinition
a.f();
B::f();
}
};
int main() {
C c(47);
} ///:~