01/10/2018, 15:41

C++ kế thừa 1 mảng 2 chiều trong class

[ C ++ ]
Mọi người cho e hỏi ạ.
Em có 2 class A và B
Trong class A, em khai báo 1 mảng 2 chiều Array;
Bây giờ em có 1 hàm trong class B và muốn sử dụng mảng Array đó thì cú pháp như thế nào vậy ạ?
Em cho class B kế thừa từ class A mà ko đc .

Alone viết 17:57 ngày 01/10/2018

em xem các khái niệm về protected, private, public nhé

rogp10 viết 17:49 ngày 01/10/2018

A có friend B; nhé.

Vũ Văn Học viết 17:44 ngày 01/10/2018

e khai báo mảng Array là protected hay public cx ko đc :((

Alone viết 17:45 ngày 01/10/2018

e nên public code lên cho mn xem nhé, chứ hỏi v ai mà biết e lỗi ở đâu

Vũ Văn Học viết 17:44 ngày 01/10/2018
class LogicGame
{
public:
	LogicGame();
	~LogicGame();

	void getInfor(); // hàm truyền thông tin vào mảng 
protected:
	int Array[5][5];

};

class player :
	public LogicGame
{    
public:
	player();
	~player();

	void in();


};

void player::in() {
	for (int i = 0; i < 5; i++) {
		for (int j = 0; j < 5; j++)
			cout <<Array[i][j] << " ";
		cout << endl;
	}
}

int main()
{
  LogicGame game();
  player player();

  game.getInfor();
  player.in();

return 0;

}

em in thế này nó chỉ ra số rác thôi ạ

Alone viết 17:42 ngày 01/10/2018
  1. Khi e khai báo LogicGame và player như thế nghĩa là 2 instance khác nhau, có nghĩa là 2 th đó chả liên qan gì tới nhau.
    2.Ở hàm player::in của e muốn in ra mảng playerGround v cái mảng đó ở đâu a chả thấy, nếu e muốn in mảng Array của class cha thì phải ghi là Array chứ.
  2. In ra rác là do nó có đc gán giá trị gì đâu mà chả ra rác.
Vũ Văn Học viết 17:51 ngày 01/10/2018

e quên ko sửa hết ạ. Còn cái mảng thì hàm getInfor () là hàm nhập vào rồi ạ, tức là phần mảng đã đc nhập giá trị rồi. Nhưng e ko hiểu sao in ra nó ko in đc giá trị mk đã nhập
Phần 2 class e để như thế ko đc ạ? Anh có thể chỉ rõ đc ko ạ

Alone viết 17:54 ngày 01/10/2018

ý 1 a đã nói r đấy, 2 cái game và player e khai báo ở main chả liên quan gì với nhau cả

Vũ Văn Học viết 17:54 ngày 01/10/2018

có cách nào để 2 cái đó liên quan đến nhau ko ạ?

Bài liên quan
0