1

您好,我正在实现一个基于底层数组的二叉树。

我的项目包含一组 c++ 文件和用于生成编译的 makefile。

我正在使用 DEV-C++ 4.9.9.2 提供的 g++。

启动编译后,我收到以下两组错误。

AlberoBinariov.h:在成员函数bool AlberoBinariov<T>::figlioSinistroVuoto(typename Alberoa<T, int>::posizioneNodo)': AlberoBinariov.h:198: error: expected)' 之前 ';' 令牌 AlberoBinariov.h:198: 错误: ')' 之前的预期主表达式令牌 AlberoBinariov.h:198: 错误: 预期';' 在 ')' 标记之前

AlberoBinariov.h:在成员函数bool AlberoBinariov<T>::figlioDestroVuoto(typename Alberoa<T, int>::posizioneNodo)': AlberoBinariov.h:204: error: expected)' 之前 ';' 令牌 AlberoBinariov.h:204:错误:预期)' before ';' token AlberoBinariov.h:204: error: expected primary-expression before ')' token AlberoBinariov.h:204: error: expected;' 在 ')' 标记之前

下面提供了感兴趣的代码部分:

      template <class T>
      bool AlberoBinariov<T>::figlioSinistroVuoto(posizioneNodo p)
      {
          return (figlioSinistro(p)==(posizioneNodo)P_NULL); //line 198
      }

      template <class T>
      bool AlberoBinariov<T>::figlioDestroVuoto(posizioneNodo p)
      {
           return (figlioDestro(p)==((posizioneNodo)P_NULL)); //line 204
      }

也为了您的方便,我在下面的链接中包含了完整的源代码。

https://filetea.me/t1sc3e60

你能告诉我吗?提前感谢您的宝贵时间。我期待着收到您的来信。

亲切的问候,杰拉德

PS:P_NULL 是在 Constants.h 文件中声明的 NULL 指针常量。

4

1 回答 1

4

您有 3 个单独的右括号,没有相应的左括号:

return (figlioDestro(p) == ((posizioneNodo)P_NULL)) /* -> */ )));

将其更改为:

return (figlioDestro(p) == ( (posizioneNodo)P_NULL ));
于 2012-11-11T00:18:47.280 回答