why won't this work? - Programmers Heaven

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

why won't this work?

Ghoti_01Ghoti_01 Posts: 4Member
the numbers the user enters in the main don't transfer into the implementation file.




//Header File

public:
//constructor
Matrix();
Matrix(int&, int&);

private:
int* column;
int* row;
int board[3][3];

//Implementation File


Matrix::Matrix(int& r, int& c)
{
row = &r;
column = &c;

for(int i =0; i < 3;i++)
{
for(int j = 0; j < 3; j++)
board[i][j] = 0;
}
}

//Main File

int r;
int c;

Matrix board(r, c);

cout << "Player 1 move: ";
cin >> r >> c;
board.playerOneMoves();
board.displayBoard();

cout << "Player 2 move: ";
cin >> r >> c;
board.playerTwoMoves();
board.displayBoard();

Comments

  • DonotaloDonotalo Posts: 715Member
    : the numbers the user enters in the main don't transfer into the implementation file.
    :
    :
    :
    : [code]
    : //Header File
    :
    : public:
    : //constructor
    : Matrix();
    : Matrix(int&, int&);
    :
    : private:
    : int* column;
    : int* row;
    : int board[3][3];
    :
    : //Implementation File
    :
    :
    : Matrix::Matrix(int& r, int& c)
    : {
    : row = &r;
    : column = &c;
    :
    : for(int i =0; i < 3;i++)
    : {
    : for(int j = 0; j < 3; j++)
    : board[i][j] = 0;
    : }
    : }
    :
    : //Main File
    :
    : int r;
    : int c;
    :
    : Matrix board(r, c); [red]//r, c are not initialized[/red]
    :
    : cout << "Player 1 move: ";
    : cin >> r >> c; [red]//r, c are initialized here[/red]
    : board.playerOneMoves();
    : board.displayBoard();
    :
    : cout << "Player 2 move: ";
    : cin >> r >> c;
    : board.playerTwoMoves();
    : board.displayBoard();
    : [/code]
    [purple]u r sending the numbers before they are initialized by the user.
    [/purple]
    [hr][purple]~Donotalo()[/purple]

Sign In or Register to comment.