- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在控制台中用 C++ 编写了一个贪吃蛇游戏,但遇到了一些我无法理解的问题。谁能帮帮我?根据以下代码:
class Snake : public Fruit{
private:
int head;
short dir_x; //-1 (left or down) / +1 (right or up)
short dir_y;
friend class Game;
int base_length = 3; // base length of snake on start of the game
const int length = Board::global_x * Board::global_y; // max length
int prev_tailPos[2]; // previous tail position (end of snake)
int tail; // tail is sum of base_length and score
int time = 100; // delay for snake
struct Body{
int body_pos[2]; // position of every element of snakes body
Body* higherEl; // point element nearer head element
};
Body* body = new Body[length]; // array for body of snake
};
按照这个顺序一切都很好,但是如果我把结构体的定义和主体放在那个类的顶部,就像那样:
class Snake : public Fruit{
private:
struct Body{
int body_pos[2]; // position of every element of snakes body
Body* higherEl; // point element nearer head element
};
Body* body = new Body[length]; // array for body of snake
int head;
short dir_x; //-1 (left or down) / +1 (right or up)
short dir_y;
friend class Game;
int base_length = 3; // base length of snake on start of the game
const int length = Board::global_x*Board::global_y; // max length
int prev_tailPos[2]; // previous tail position (end of snake)
int tail; // tail is sum of base_length and score
int time = 100; // delay for snake
};
在我停止游戏后出现此错误:
> Unhandled Exception at 0x76C40860 (sechost.dll) in Snake.exe:
> 0xC0000005: Access violation reading location 0x00000004`
谁能帮我解决这个问题?
最佳答案
在你的第二个例子中,变量 length
在评估时似乎是未定义的正文* body = new Body[length];
。
这很可能是您的问题。
为了进一步解释这一点,您需要了解:
类/结构中变量声明的顺序很重要。
举例说明:
class Data{
int a = 10;
int b = a;
};
在此示例中,a
和 b
都将等于 10。
但是,在这种情况下:
class Data{
int b = a;
int a = 10;
};
a
将是 10,b
将是垃圾值。
这是因为在评估 int b = a;
时。 a
未定义。
关于c++ - 使用 C++ OOB 的贪吃蛇游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58014059/
我有一个在大多数机器 OOB 上运行良好的商业应用程序。 我只有 1 个用户在启动 OOB 版本时出现以下错误(请注意,在他的浏览器中它运行良好)。 对不起俄语,但他的机器是俄语。 通常它说有错误并且
我想停用我的应用程序中的右键单击,该右键单击提供了在桌面上安装应用程序的选项。我该如何做这样的事情? 最佳答案 右键单击 Visual Studio 中的项目并选择属性。那里有一个复选框“启用浏览器运
在我的 Silverlight 5 OOB 主要方法中,我设置了自定义 Application.Current.MainWindow.Left 和 Application.Current.MainWi
删除 OOB 应用程序后,Isolated Storage 创建的文件会发生什么变化?它们是保留还是文件也被删除了?从我可以推断出的文件将被维护,以便浏览器中的同一个应用程序可以访问它们。对? 最佳答
我正在使用 OOB 功能将文件上传到共享点。我正在使用 包装所有数据的标签和功能。 (描述为here) 这是我的 elements.xml 文件中的模块示例: 唯一的问题是,当我停
我正在尝试使用 sllauncher.exe 安装全新的 Silverlight 5 应用程序。当我使用旧的 SL4 应用程序执行此操作时,它工作正常,但是,这个新的 SL5 应用程序有些不同,导致
我有一个使用 Silverlight 4 构建的 Silverlight 应用程序,它在浏览器外模式下工作。当我启动应用程序时,会出现一段时间的白屏。我做了一些谷歌搜索,这让我找到了 Mike Wol
我想在删除 OOB 应用程序时删除存储在独立存储中的文件。我怎样才能删除这些文件? 谢谢 最佳答案 好问题! This文章描述了如何在应用程序卸载时自动执行此过程: The previous code
我目前正在使用随机森林分类模型。我正在使用 randomForest 包。由于我总共处理 11 个不同的类,因此使用 plot() 函数会生成 12 个错误率图 - 类错误率和 OOB 错误率。有没有
假设您正在尝试以棋盘模式访问数组: 0 1 2 3 4 5 6 70 o • o • o • o •1 • o • o • o • o2 o • o • o • o •3 • o • o • o
我的 QuickSort 实现因索引越界错误而失败,我无法弄清楚原因。 unsigned long PerformQuickSort(std::vector& values) { unsign
我有一个 C 程序,可以将一些数据发送到远程机器上的 python 服务器。 C 代码连接套接字,然后发送带外消息和一些数据: int on = 1; fd = socket(PF_INET, SOC
当我启动我的 Silverlight 浏览器外应用程序时,窗口大小与我的布局不匹配。我已经看到了使用 Deployment.ApplicationIdentity 的 XML 文件提供不同大小图标的方
我有一个 Silverlight 应用程序,我使用 Prism 使用 MEF 动态加载模块。 当我从浏览器中取出这个应用程序时,我遇到了一些奇怪的行为! 如果在我加载我的 SL 应用程序时 fiddl
我正在寻找 Silverlight 来构建一个“跨平台”桌面应用程序(无论如何是 Windows 和 Mac),但是有一个我找不到解决方法的问题。在 Mac OS 上,在 Adobe AIR 中,
我想为 Windows 和 MacOS 的 oob 应用程序创建自定义安装程序。 对于 Windows,我使用了以下方法 - https://www.codeproject.com/Articles/
现在我有一个带有 SQL Server 后端的 Winform 应用程序。 DAL 由 Linq to SQL 组成。此应用程序的复杂性之一是它需要离线运行。 我通过使用合并复制使本地 SQL Exp
我在控制台中用 C++ 编写了一个贪吃蛇游戏,但遇到了一些我无法理解的问题。谁能帮帮我?根据以下代码: class Snake : public Fruit{ private:
我有一个如下所示的数据框 df1_new = pd.DataFrame({'person_id': [1, 1, 3, 3, 5, 5],'obs_date': ['7/23/2377 12:00:
有什么方法可以添加一些代码以在卸载 OOB silverlight 应用程序时触发?我想在用户卸载应用程序时向我的网络服务触发一些东西,这可能吗? 最佳答案 我发现您可以处理 App.xaml 上的“
我是一名优秀的程序员,十分优秀!