我有一个类Board
它包含指针的指针数组,被称为Space** bo
,每个指针指向Space
类的实例。我有一个名为SnakesAndLaddersSpace
的派生类,它继承自Space
和SnakesAndLaddersBoard
,它继承自Board
。从基地到派生的C++无效转换
本质上,在我的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];
}
}
正在做下面是我得到
SnakesAndLaddersBoard.cpp|13|error: invalid conversion from ‘SnakesAndLaddersSpace*’ to ‘Space*’ [-fpermissive]|
**哪里有错误?哪一行是13号?而不是用文本描述你的代码,而不是用代码来代码,特别是涉及的类/变量的声明和定义。 – 2013-04-27 14:42:59
@JoachimPileborg,来吧,它只是片段中的一个点,只有2个候选人发生这种转换。 – Lol4t0 2013-04-27 14:51:55
@ Lol4t0我们无法确定这是否是有问题的线路,所以比对不起更安全。 – 2013-04-27 14:53:41