各位老手们,小弟有几道考试题不太明白,请各位帮着解答一下。谢了,回答加分

xw0312 2006-10-25 11:33:43
小弟刚刚开始学习c++,很多地方都不太懂。有几道题想请各位帮着解答一下。

1.Each pixel with one byte, fulfill the pixel to the screen. Assume no clipping considered.
struct {
long data[256];
} tBlock

long *screen; /*Initialized*/
int Wscreen, Hscreen; /*Initialized*/
void DisplayBlock(int x, int y, tBlock *b) {
int i, j;

for (i=0; i<16; i++)
for (j=0; j<16; j++)
screen [x-1 + j + (y-1)*Wscreen + i*16]
= b->data [j + i*16];

这段程序是用像素来填充屏幕上的一个区域,但是很耗时间,问问有没有办法优化一下啊?


3. write a class Character, each Character object include 10 sprite which could share the same sprite instance. For example, several character could share the same arm or leg other than the other part.

4. write a class Level, which should contain several characters and some character may appear more times rather than once in the same level.

5. write a function to count the number of total sprites used in the same Level. U could use any function u like.

这3题是有关联的。我不太明白怎么创建这个结构和类,谢谢高手们!
...全文
278 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jixingzhong 2006-10-26
  • 打赏
  • 举报
回复
属于误操作
========
第一个 类似与 婴儿联体,
不同的个体, 共享了一些东西:
比如建一个sprite池,各character实例都可以共享各个sprite实例
jixingzhong 2006-10-26
  • 打赏
  • 举报
回复
这几个问题其实就是 类型和实例 的区别。

1 类型, 比如 手,
手都是手掌+大小臂组成, 手掌都是5手指(正常情况下),
这个就是类型,它是抽象上的,没有指定是 哪个人的手,
它只说手, 那么大家都一样, 都有 手 这个部分, 特性也一样

2 实例
每个人的手都有区别, 大小、颜色、强壮程度...
taodm 2006-10-26
  • 打赏
  • 举报
回复
把题用中文说出来吧。偶不懂夷语。
先纯支持
OOPhaisky 2006-10-26
  • 打赏
  • 举报
回复
支持一下^_^
飞哥 2006-10-26
  • 打赏
  • 举报
回复
看那些英语头就疼~
csShooter 2006-10-26
  • 打赏
  • 举报
回复
mark
xw0312 2006-10-25
  • 打赏
  • 举报
回复
哦,明白了。下面3个问题您能帮着看一下么?
Kusk 2006-10-25
  • 打赏
  • 举报
回复
1. 主要是把一些不必要的重复计算提出来.

int i, j;
int tmp = (y - 1) * Wscreen + x - 1;;
for (i = 0; i < 256; i += 16)
for (j = 0; j < 16; ++j)
{
int tmp2 = i + j;
screen[tmp + tmp2] = b->data[tmp2];
}

65,208

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧