c ++ 2d阵列迷宫导航

时间:2014-02-03 23:35:55

标签: c++ arrays multidimensional-array

我是c ++的新手,想知道我是不是最好的方式。我需要从文本文件中读取一行并从中构建一个数组然后导航它。如果我做错了,请告诉我。我可以按照自己的方式访问矩阵吗?

头:

#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 ++文件:

#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) {

}

1 个答案:

答案 0 :(得分:1)

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

这些应该是

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