user41829
user41829

Reputation: 105

c++ 2d array maze navigation

I'm new to c++ and wondering if I'm doing this the best way. I need to read in a line from a text file and build an array from it and then navigate it. Let me know if I'm doing something wrong. Can I access matrix the way I am?

header:

#ifndef MAZE_HPP_
#define MAZE_HPP_

#include <fstream>
#include <vector>
#include <string>

class Maze
{
public:
    Maze(int size);
    ~Maze() {}

    enum Direction { DOWN, RIGHT, UP, LEFT };

    // Implement the following functions:

    // read maze from file, find starting location
    void readFromFile(std::ifstream &f);

    // make a single step advancing toward the exit
    void step();

    // return true if the maze exit has been reached, false otherwise
    bool atExit();

    // set row and col to current position of 'x'
    void getCurrentPosition(int &row, int &col);

    // You can add more functions if you like
private:
    // Private data and methods
    int size;
    static string matrix[30][30];
};


#endif /* MAZE_HPP_ */

c++ file:

#include <iostream>
#include "maze.hpp"
#include "utils.hpp"
#include <vector>
#include <string>

Maze::Maze(int size) {
    size = size;
}

Maze::void readFromeFile(std::ifstream &f) {
    std::string line;
    int i, j;
    while(std::getline(f, line)) {
        for(i = 0; i < line.length(); i++) {
            for(j = 0; j < line.length(); j++) {
                matrix[i][j] = line.at(j);
            }
        }
    }
}

Maze::void step() {

}

Maze::bool atExit() {

}

Maze::void getCurrentPosition(int &row, int &col) {

}

Upvotes: 0

Views: 1932

Answers (1)

Sergii Khaperskov
Sergii Khaperskov

Reputation: 441

Maze::void readFromeFile {}
Maze::void step() {}
Maze::bool atExit() {}
Maze::void getCurrentPosition(int &row, int &col) {}

these should be

void Maze::readFromeFile{}
void Maze::step() {}
bool Maze::atExit(){}
void Maze::getCurrentPosition(int &row, int &col){}

Upvotes: 1

Related Questions