我有一个更一般的 OOP 问题。创建一个对调用/包含类的引用的成员是不好的封装吗?例如:
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)
{
}
}
我只是发现自己需要这样做,并想知道这是否是一种带有不良封装气味的做法。