2012-03-24 3 views
-1

Я делаю простую змеиную игру на C++. он компилируется, но не запускается. Я использую NetBeans на Mac, и я никогда не имел проблем, как это раньше, поэтому я предполагаю, что это проблема с моим кодом:Ошибка запуска «змеи»

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

я думаю, что это может быть проблема с 2d вектором.

+0

_Не запускается на удивление мало, чтобы продолжить. Вы получаете ошибки? Предупреждения? Являются ли пять строк вы предоставили всю программу? – sarnold

+0

@sarnold: посмотрите историю изменений, чтобы просмотреть всю программу. Я уменьшил его до минимального размера. – Mankarse

+0

@Mankarse: Ах! Как я упустил это? .. должно быть, время заняться чем-то другим. – sarnold

ответ

5

snake[0][0] = 0 имеет неопределенное поведение, потому что вы пытаетесь присвоить элемент вектора, который не существует.

То есть - snake.size() == 0, поэтому доступ к первому элементу с snake[0] недействителен.

+0

«И что должен сделать OP, чтобы исправить это?» – Marlon

+0

@Marlon: Возможно, измените дизайн, чтобы использовать 'std :: vector ' для представления змеи. – Mankarse

 Смежные вопросы

  • Нет связанных вопросов^_^