根据上述部分可以解决了贪吃蛇问题代码,写一段自己写代码的感受和收获。包括但不限于搞不清类Food和类Snake可以用面对对象方法联系起来,一点也不清楚vector的情况下,在csdn网站上找资料,使用容器vector创建2维数组,最后做出程序内心的喜悦,仿佛煎熬全部褪去,要求详细和精准,在代码中找出例子,并进行描述
时间: 2024-03-22 10:36:53 浏览: 64
写代码的感受和收获:
在写贪吃蛇游戏的代码过程中,我深刻体会到了面向对象编程的思想,特别是类的概念和封装、继承、多态等面向对象的特性。通过将游戏中的蛇、食物、游戏画面等功能封装成不同的类,使得代码更加清晰易懂、易于维护和扩展。
在实现过程中,我也遇到了很多问题,例如不清楚如何将类Food和类Snake联系在一起,以及如何使用vector创建2维数组等。但是通过在CSDN网站上查找相关资料,学习了STL库中vector的使用方法,并成功运用到游戏中,实现了游戏画面的渲染和更新。这让我深刻感受到了网络资源和社区的力量,也让我更加熟练地掌握了C++语言的使用。
最终,当我看到自己所写的贪吃蛇游戏可以正常运行、玩家可以通过键盘操控蛇的移动、蛇能够吃到食物并变长、游戏结束后能够正确显示分数等信息时,内心充满了喜悦和成就感。这种感觉就像是在煎熬中挣扎了很久,终于迎来了胜利,让我更加热爱编程并愿意不断学习和探索。
下面是一段使用vector创建二维数组的代码示例:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
int n = 5, m = 6; // 定义行数和列数
vector<vector<int>> arr(n, vector<int>(m)); // 创建n行m列的二维数组
// 遍历二维数组并赋值
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
arr[i][j] = i * m + j;
cout << arr[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
这段代码使用了vector容器来创建一个二维数组,首先定义了行数和列数,然后使用vector<vector<int>> arr(n, vector<int>(m))来创建一个n行m列的二维数组。接着使用两个for循环遍历二维数组,并赋值和输出二维数组的元素。
阅读全文