dev-c++ g++ - 错误:类型名/静态常量未声明(首先使用此函数)[关闭]
Posted
技术标签:
【中文标题】dev-c++ g++ - 错误:类型名/静态常量未声明(首先使用此函数)[关闭]【英文标题】:dev-c++ g++ - error: typename/static constant undeclared (first use this function) [closed] 【发布时间】:2012-11-30 01:11:15 【问题描述】:我不断收到以下关于 typename posizione 和 int constant POSIZIONENULLA 的错误。奇怪的是,我在代码中使用了 posizione 类型,但只在函数中得到错误。
Coda.h:156: error: `template<class T> class Coda' used without template parameters
Coda.h: In function `typename Coda<T>::posizione copiaNodo(typename Coda<T>::posizione)':
Coda.h:158: error: `POSIZIONENULLA' undeclared (first use this function)
Coda.h:158: error: (Each undeclared identifier is reported only once for each function it appears in.)
Coda.h:161: error: `posizione' undeclared (first use this function)
Coda.h:161: error: expected `;' before "tempPosizione"
Coda.h:162: error: `tempPosizione' undeclared (first use this function)
Coda.h:164: error: `temPosizione' undeclared (first use this function)
Coda.h: At global scope:
Coda.h:169: error: `template<class T> class Coda' used without template parameters
Coda.h: In function `void eliminaNodo(typename Coda<T>::posizione)':
Coda.h:171: error: `POSIZIONENULLA' undeclared (first use this function)
Coda.h:173: error: `posizione' undeclared (first use this function)
Coda.h:173: error: expected `;' before "tempPosizione"
Coda.h:175: error: `tempPosizione' undeclared (first use this function) make: *** [Coda.o] Error 1
我正在使用带有 g++ 的 dev-c++ 4.9.9.2
我已经上传了完整的源代码@http://ge.tt/9I0pXcS/v/0?c供你编译。对于编译,您可以使用文件夹“Coda”中的 make 文件或在编译器文件夹中启动以下命令。
g++ -g -c Coda.h -o Coda.o ar crf Coda.a Coda.o
我真的可以帮到你。非常感谢您抽出宝贵的时间。谢谢。
【问题讨论】:
据我所知没有代码。请将其缩小到合理的大小(参见sscce.org)并在此处发布,注意使用格式代码(
)按钮。
@Chris 我已经上传了整个源代码@ge.tt/9I0pXcS/v/0?c 供您编译。对于编译,您可以使用文件夹“Coda”中的 make 文件或在编译器文件夹中启动以下命令。
好的,我还没有真正解压缩 zip 并查看代码,但是根据错误消息,您使用 Coda
没有指定模板参数。您需要Coda<T>
之类的内容,并选择合适的T
。
@jogojapan 我通过我的代码应用了你所说的原则。但是在两个函数中我得到了错误。无论如何,我认为这是相关的模板问题,尽管我不知道那是什么......
请将您的 IDE 更新到以下版本,该版本修复了大量错误,随 GCC 4.6.1 或 4.7.0 一起提供,并且完全可移植:sourceforge.net/projects/orwelldevcpp
【参考方案1】:
Coda.h:156: error: `template<class T> class Coda' used without template parameters
这告诉你你已经输入了Coda
而不是Coda<something>
。
Coda.h:158: error: `POSIZIONENULLA' undeclared (first use this function)
你还没有声明POSIZIONENULLA
。
Coda.h:161: error: `posizione' undeclared (first use this function)
一样。
Coda.h:161: error: expected `;' before "tempPosizione"
您在第 161 行忘记了分号 ;
Coda.h:162: error: `tempPosizione' undeclared (first use this function)
和 Coda.h:164: error: `temPosizione' undeclared (first use this function)
同上。
【讨论】:
非常感谢!现在所有错误都已修复。非常感谢我非常感谢您的贡献! 不客气,我的建议是您熟悉遇到的错误,以便在看到它们时轻松解决。以上是关于dev-c++ g++ - 错误:类型名/静态常量未声明(首先使用此函数)[关闭]的主要内容,如果未能解决你的问题,请参考以下文章