重构 " 带标准统计的亲属关系模型 "
将复制对象的统计项目替换为代理人直接更新的普通变量。
1 删除所有标准统计项目,创建辅助变量
打开之前创建的模型,在Main的编辑器中选择people对象,删除统计页面的所有项目。
2 在 Main 中,添加四个类型为 int 的变量,这些将是计数器
nJunior
nFemaleAdults
nMaleAdults
nSenior
再添加两个 int 类型的变量:
totalKids
nFemaleNonJunior
这两个变量将帮助我们获得每个家庭的平均孩子数量。
3 修改时间堆栈图中的表达式
将表达式 people.nJunior() 改为简单的 nJunior ,
people.nFemaleAdults() 改为 nFemaleAdults 等
4 修改柱状图中的表达式
将表达式 people.aveKids() 改为
zidz( totalKids, nFemaleNonJunior )
5 统计变量的程序更新
打开 Person 的编辑器
1、选择状态图状态 Junior,在Entry动作中添加这行代码 :
get_Main().nJunior++;