2

我正在尝试学习 c++ 并且正在关注这本在线书籍,虽然大部分都很好,但有时我觉得事情没有得到很好的解释。

在第 163 页,当谈到链表时,他展示了以下代码:

p_enemies = EnemySpaceShip* addNewEnemyToList( p_enemies );

它没有完全填充上下文,但我相信 p_enemies 将是一个声明的指针,而 addNewenemyToList 将是一个定义的函数。我想知道的是表达式将如何工作,这是正确的代码。这对我来说没有意义,因为它看起来像一个方法声明,在那里有返回类型,但它在赋值之后就在那里。这是什么?

4

1 回答 1

1

该代码段没有意义。

这是我认为这个片段有效的唯一方法:

p_enemies = (EnemySpaceShip*) addNewEnemyToList(p_enemies);

结果:如果 p_enemies 是 EnemySpaceShip 类型的指针,则在将返回值转换为 EnemySpaceShip 指针后,这会将“addNewEnemyToList”函数的返回值分配给 p_enemies。否则,该行将失败。

于 2012-10-30T14:17:25.280 回答