STEP2 加进数据结构
在第二部分,我们将加进来一些我们的teris所需要的数据结构,你可以在step2.diff.txt比较所加进去的代码,
在这里我们用两个类TBlock和TGrid,这些类没有指向它们所拥有的数据的指针,所有的T类都是这样。TBlock代表一个单个的tetris块(一个由四个块构成的图形)。TGrid代表一个格子(20*10)这些块都是固定的,[应该就是那些固定的方格]。Document类里,iGrid代表我们游戏的时候的那个图板,iCurrBlock代表那些还在下落的块。iBlockPos是那些正在下落的方块的位置。
新加进去的代码主要是位运算,唯一展现symbian os特性的是TFixedArray类的运用。这些模板类可以象是一般的数组一样访问,但是在内部它会做范围检查。比如说,在TFixedArray中,你象索引20写函数时不会有内存混乱的发生,反而会给出一个错误
 
同时我们还把options的菜单编辑了一下,我们会在最后版本里用到
 
PS:也许你不知道step2.diff.txt是怎么比较出来的在/Symbian/7.0s/Series60_v21_C/epoc32/gcc/bin/diff.exe,
我们在命令行下diff file1 file2 就可以了,你可以用diff --help查看帮助