支离破碎



关于主动对象的问题,求高见

   2005-1-19 17:43
今天下午在一个学校的论坛上看到的,解决不了,贴出来大家一起讨论吧,以下为原文转载:

一个关于主动对象的讨论
今天突然想起来一个“主动对象”的问题。面向对象的程序设计正是现今主流趋势之一。但是,对象的主动问题如何解决或者说能不能解决呢?
我们根据战争的实际情况进行下列假设:
假设一:现有class Soldier,其数据成员有且只有“平面坐标”(float fPointX 和 float fPointY),成员函数有“移动”(void move(float fX, float fY));
假设二:所有的Soldier实例在平面坐标轴上沿直线移动,速度为定值,并且每个Soldier的视野均相等也为定值;
假设三:(也就是主动的问题)当Soldier周围有其他的Soldier进入他的视野的时候,就会发生战斗,然后随机将一个Soldier消除,也就是战死;

现在进行简化设定:
平面上有两个点,每个点是一个Soldier的实例(sa和sb),sa坐标为(0,0),sb坐标为(200,0),即两Soldier相距200单位(简化了y轴),每个Soldier的视野为150,当sb从相距151处移入sa视野时应如何处理?

如果添加成员函数scan,不断地扫描所有的其它对象,那当对象多了的时候资源的使用就成了问题,这还姑且不论是否为友军和障碍物的问题。

想不到好方法解决
标签集:TAGS:
回复Comments()点击Count()

回复Comments

{commenttime}{commentauthor}

{CommentUrl}
{commentcontent}

 

日复一日
最新评论
去他们那
寻寻觅觅
访问计数
支离破碎

年龄:22周岁

性别:男

原籍:天津武清

现居:河北廊坊

爱好:读书、设计、篮球、音乐

QQ:120174695

邮箱:rainpatch@163.com

 

Redesign by rainj Powered by 5DBlog.com