iOS解耦心得---B类修改A类中变量的另一种方法

需求描述

最近开发遇到这么一个需求,我们项目架构采用MVVM的变种模式,什么鬼?简单来说,在Model类和Controller类之间分离出专门处理数据逻辑的DataController层,假设A是我们的Controller层,B是DataController层.需求就是在B类中实现修改A类中的全局变量,实现方法有很多,下面的方法是我认为最elegant(zhuangbi)的
伪代码如下:

A:
{
    Var *globalVar//全局变量
}
     B *b = [B new];//实例化出b对象
     Var* c_globalVar = globalVar;//将全局变量转成局部变量
     [b showMeTheCode:&c_globalVar];
     globalVar = c_globalVar;
     NSLog(@“%@”,globalVar);
B.h:
     -(void)showMeTheCode:(Var **)c_pointer_addr;
B.m:
    -(void)showMeTheCode:(Var **)c_pointer_addr{
             *c_pointer_addr = new_c;//将修改有的new_c赋值给全局变量
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容