【发布时间】:2012-02-14 06:59:06
【问题描述】:
我正在从事一个项目,其中我有一个模型被几个不同的视图使用,从而被视图控制器使用。这些视图控制器不知道彼此的存在,彼此之间也没有任何关系。这意味着我在每个视图控制器中都有一个模型*,当加载视图时,我在每个类中分配模型并让指针指向它。或者简而言之:我在 n 个使用它的类中分配我的模型 n 次,我认为这是浪费内存(不是说我会用完内存,但我认为这是不好的做法)。
在 iOS 中有没有一种方法可以让我(同时仍然保持良好的 MVC 实践)能够创建和使用我的模型的相同实例?通常我一直在用 C++ 编程,我会将模型的引用传递给每个应该知道模型的类的构造函数。示例(c++):
// Let to classes know of the same model object
MyModel model;
ControllerA myControllerA(&model);
ControllerB myControllerB(&model);
相反,我在每个使用我的模型(objective-c)的类中执行以下操作:
// ControllerA
model = [[MyModel alloc] init];
// Controller B
model = [[MyModel alloc] init];
我不想让所有模型都成为单例对象,在这个特定的项目中,我认为使用观察者模式会有点过头了。
所以,我的问题是:我怎样才能做到这一点,甚至有可能吗?
【问题讨论】:
标签: iphone ios model-view-controller model