Я делаю приложение на C ++, и при этом у меня возникают проблемы, и я не могу исправить ошибку. У меня есть класс ratinmaze, который я хотел бы использовать в основном классе, но получаю много ошибок ..

Ratinmaze.h

#ifndef RATINMAZE_H
#define RATINMAZE_H
#include <iostream>


class ratinmaze
{
public:
    ratinmaze();
    int [5][5] solution; //error
    virtual ~ratinmaze();
    ratinmaze(int N);
    void solveMaze(int [][5] maze, int N);
    bool findPath(int [][5] maze, int x, int y, int N, std::string direction);
    bool isSafeToGo(int [][5] maze, int x, int y, int N);
    void print(int [][5] solution, int N);
    void print(int [][5] solution, int N);
protected:

private:
    std::string direction;
    int N;
    int y;
    int x;
};

#endif // RATINMAZE_H

Main.cpp

#include <iostream>
#include "ratinmaze.h"

using namespace std;

int main()
{
int N = 5;
int[5][5] maze = {{ 1, 0, 1, 1,1 },
                 { 1, 1, 1, 0,1 },
                 { 0, 0,0, 1, 1 },
                 { 0, 0, 0, 1,0 },
                 { 0, 0,0, 1, 1 }};
ratinmaze r = new ratinmaze(N);
r.solveMaze(maze, N);
return 0;
}

Я получаю ошибку в первой строке:

ожидаемый unqualifie-id перед '[' токеном, и в дальнейшем я получаю "error: expected ',' или '...' перед 'лабиринтом'

Если бы вы, ребята, могли мне помочь, я был бы очень признателен!


@Обновить

Я понял, что неправильно создавал свои массивы, но у меня здесь ошибка на главной странице: ratinmaze r = new ratinmaze(N);

Ошибка:

недопустимое преобразование из ratinmaze * в int [-fpermissive]

Любая идея ?

-5
Tim Thom 5 Июн 2018 в 10:14

1 ответ

Лучший ответ

В C ++ массивы объявляются в квадратных скобках после имени переменной, например:

int solution[5][5];
0
Liam Potter 5 Июн 2018 в 07:27