C3861 идентификатор не найден C++ ошибка компиляции
Я только только начал изучать C++, вообще как слепой котенок, поэтому, пожалуйста, если можно- простыми словами, простите заранее...
Задача- нарисовать поле для "сапера". Я нахожусь на этапе отладки. Завел функцию, которая располагает мину на поле, и функцию, которая печатает поле. Пока пытаюсь расположить одну мину и вывести на экран поле. Вот код:
#include <iostream>
#include <vector>
#include <string>
int main() {
int rows_nb = 5, collumns_nb = 4;
std::vector<std::vector<int>> field(rows_nb, std::vector<int>(collumns_nb, 0));
std::vector<int> mine1 = { 1, 0 };
field = place_mine(field, mine1);
print_field(field, rows_nb, collumns_nb);
return 0;
}
std::vector<std::vector<int>> place_mine(std::vector<std::vector<int>> field, std::vector<int> mine_coords) {
if (field[mine_coords[0]][mine_coords[1]] == -1) {
return field;
}
else {
field[mine_coords[0]][mine_coords[1]] = -1;
for (int i = mine_coords[0] - 1; i <= mine_coords[0] + 1; i++) {
for (int j = mine_coords[1] - 1; i <= mine_coords[1] + 1; j++) {
if ((i == mine_coords[0] and j == mine_coords[1]) or (i < 0 or j < 0)) {
continue;
}
else {
field[i][j] = field[i][j] + 1;
}
}
}
}
return field;
}
void print_field(std::vector<std::vector<int>> field, int rows_nb, int collumns_nb) {
for (int i = 0; i != rows_nb; i++) {
for (int j = 0; j != collumns_nb; j++) {
std::cout << field[i][j];
if (j != collumns_nb) {
std::cout << " ";
}
}
if (i != collumns_nb) {
std::cout << "/n";
}
}
}
При компиляции возникают ошибки, которые на пишутся в отладчик. Подскажите пожалуйста, как отдебажить так, что б понять в чем ошибка? И в чем же заключается эта ошибка? Мой IDE- visual studio открытая версия не помню какая, качал пару месяцев назад (наверно последняя).
Ответы (1 шт):
Ошибки возникают из-за того, что функции объявлены после того, как вызываются в коде.
Для решения можно воспользоваться одним из способов:
- Перенести объявление функций в начало программы, до их вызова, т.е. до функции
main
- Добавить перед функцией
main
прототипы функций, которые объявлены ниже.