マイヤーは、特定のシナリオでは、メンバー以外の非友人機能がメンバー機能よりも優れていることを実証C++で説明しています。 例: // Web browser allows to clear something
class WebBrowser {
public:
...
void clearCache();
void clearHistory();
vo
クラスAがクラスBとのコンポジション関係にある場合、クラスAのデータカプセル化を中断しないように、クラスAを介して取得されたBの特定のインスタンスをクラスAで変更可能にする必要がありますか?あるいは、合成はデータのカプセル化ではなく、生涯バインドのみを意味しますか? class A
{
B itsB;
B* getB() {return &itsB);
}
void A
クラス内でラップせずにPHPで変数や関数をカプセル化することは可能ですか?私がしていたことは: //Include the file containing the class which contains the variable or function
include('SomePage.php');
//Instantiate the class from "SomePage.php"