编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
 17 12
发新话题
打印

我也来写贪吃蛇

可能是你有什么地方内存泄露了,或者有下标越界,或者用了new
没有正确的用delete或delete[]  <--这个很麻烦,有时都不知道用哪个
一般就是这些问题。我写了一个游戏引擎,就是这样一步一步修正错误的。
大家一起来编程吧!

TOP

嘿嘿,我帮你改了一下,不会有错误了~o~


void CMysdiView::OnTimer(UINT nIDEvent)
{
    // TODO: Add your message handler code here and/or call default
//    SendMessage(WM_MYMESSAGE);//为什么不直接调用函数?搞消息多麻烦?
    OnMyMessage();//直接调用就不会错了
    CView::OnTimer(nIDEvent);
}

// Attributes
public:
    CMysdiDoc* GetDocument();
    HICON hDocIcon;
    int j;
    int i;
    int mark;
    int sklen;
    struct position
    {
    int    skx;
    int sky;
    }p[10000],remb[10000],randPt,rem[5000];//我直接加了个0,想越界都难!~O~
    int con;
附件: 只有本站会员才能下载或查看附件,请您 登录注册
大家一起来编程吧!

TOP

总之你的游戏做的还是不错的,但是代码比较乱,我看了好久才弄明白,不过用Win32看起来可能会更直观。
代码前面的空格可以按Tab键来空。
按Alt+F8可以对齐选定的代码。
大家一起来编程吧!

TOP

呵呵.谢谢你啊..其实我是纯粹用来写着玩的..当时觉得要把学到的东西全部复习啊....
学习需要安静。。海盗要重新来过。。

TOP

学习

TOP

用SETTIMER做定时器在用双缓存的办法

TOP

太厉害了,我完全看不懂。。。怎么办啊

TOP

 17 12
发新话题