1
我有一個更普遍的面向對象問題。創建一個對調用/包含類的引用的成員是封裝不好的嗎?例如:是否包含對調用或包含類錯誤封裝的引用?
class Foo
{
void DoSomething()
{
Bar bar = new Bar(this);
}
}
而在Bar.cs或Bar.cpp或任何
public class Bar
{
private Foo m_myFoo;
public Bar(Foo foo)
: m_myFoo(foo)
{
}
}
我才發現自己需要做到這一點,要知道這在一般情況下,是一種做法,氣味不好的封裝。
我最終不需要這個,因爲我想到了更通用的方法來做到這一點,但是,我的意圖是隻有Bar能夠打電話給Foo,因爲它是一個Manager類型類。 –