小编use*_*041的帖子

C++从base到derived的无效转换

我有一个类Board,其中包含一个指针指针数组Space** bo,每个指针指向一个Space类的实例.我有一个派生类SnakesAndLaddersSpace,它继承自Space,SnakesAndLaddersBoard继承自Board.

基本上,在我的SnakesAndLaddersBoard课堂上,我想要改变Space** bo它继承的,SnakesAndLaddersSpace** bo我将如何解决这个问题?

这就是我在SnakesAndLaddersBoard课堂上所做的

SnakesAndLaddersBoard::Board::Board(int w, int h)
{ 
    width=w;
    height=h;//set up the size of the board

    bo = new SnakesAndLaddersSpace*[height];  // <<-- error
    for(int i = 0; i < height; i++)
    {
        bo[i] = new SnakesAndLaddersSpace[width]; 
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误

SnakesAndLaddersBoard.cpp | 13 |错误:从'SnakesAndLaddersSpace*'无效转换为'Space*'[-fpermissive] |

c++ inheritance

1
推荐指数
1
解决办法
1746
查看次数

标签 统计

c++ ×1

inheritance ×1