C ++期望`)'之前';'令牌期望的主要表达式在')之后#39;代币

时间:2012-11-11 00:14:40

标签: c++ templates g++ dev-c++ typename

你好,我是基于底层数组的二叉树。

我的项目包含一组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:错误:')'令牌之前的预期primary-expression 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指针常量。

1 个答案:

答案 0 :(得分:4)

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

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

将其更改为:

return (figlioDestro(p) == ( (posizioneNodo)P_NULL ));