Können wir die Wiederverwendbarkeit dieses schlüsselorientierten Zugriffsschutzmusters erhöhen?
Können wir die Wiederverwendbarkeit für @ erhöhedieses schlüsselorientierte Zugriffsschutzmuster:
class SomeKey {
friend class Foo;
// more friends... ?
SomeKey() {}
// possibly non-copyable too
};
class Bar {
public:
void protectedMethod(SomeKey); // only friends of SomeKey have access
};
Um weitere Missverständnisse zu vermeiden, unterscheidet sich dieses Muster vom Attorney-Client idiom:
s kann prägnanter sein als der Anwalts-Client (da es sich nicht um ein Proxy durch eine dritte Klasse handeltEs kann die Delegation von Zugriffsrechten ermöglichen ... aber es ist auch aufdringlicher für die ursprüngliche Klasse (ein Dummy-Parameter pro Methode)(Eine Nebenbesprechung entstand indiese Frag, also öffne ich diese Frage.)