【问题标题】:"snake" run error“蛇”运行错误
【发布时间】:2012-03-24 00:25:56
【问题描述】:

我正在用 C++ 制作一个简单的蛇游戏。它编译,但不会运行。我在 mac 上使用 netbeans,我以前从未遇到过这样的问题,所以我认为这是我的代码的问题:

#include <vector>
std::vector<std::vector<int> > snake;//the snake
int main(){
    snake[0][0]=0;
}

我认为这可能是二维向量的问题。

【问题讨论】:

  • Won't run 出人意料地少得可怜。你有错误吗?警告?你给的五行是整个程序吗?
  • @sarnold:查看编辑历史以查看整个程序。我把它减少到最小的情况。
  • @Mankarse:啊!我怎么会忽略这一点?......必须是时候做点别的了。

标签: c++ runtime-error 2d-vector


【解决方案1】:

snake[0][0] = 0 具有未定义的行为,因为您正在尝试分配给不存在的向量元素。

即 - snake.size() == 0 因此使用 snake[0] 访问第一个元素不是有效操作。

【讨论】:

  • “那么 OP 应该如何修复它?”
  • @Marlon:可能会改变设计以使用std::vector&lt;Point&gt; 来代表蛇。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多