题目来源
《C++入门经典》第10版,第15章编程项目第9题
题目内容
题目理解
这是全书扫下来一个比较有意思的项目,作为一个模拟器题目,可以看到并检测结果,值得一做。
-
作为《继承》章节的题目,题目说先有一个基类organism,再编写虚函数,只是为了加深理解,并不必要,本题的意思在于如何展现两种生物的特性以及相互作用关系
-
两个思路:(1)选择使用链表类来处理捕食者和被捕食者之间,执行操作的搜索都是在两个行动者的链表类中进行,搜索每一个对象,进行处理(2)以场地作为搜索范围,对场地中每一个位置进行处理
-
在对move和breed行为上还有两个处理方式的细节,按照原题的说法,应该是先随机选择一个方向,如果该方向上无法执行,就行为不执行。但也可以选择另一种行为处理方法:以完成任务为首要方向,即行为随机选择方向进行执行,不行后接着随机选择方向,