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&lt;T&gt; 之类的内容,并选择合适的T @jogojapan 我通过我的代码应用了你所说的原则。但是在两个函数中我得到了错误。无论如何,我认为这是相关的模板问题,尽管我不知道那是什么...... 请将您的 IDE 更新到以下版本,该版本修复了大量错误,随 GCC 4.6.1 或 4.7.0 一起提供,并且完全可移植:sourceforge.net/projects/orwelldevcpp 【参考方案1】:

Coda.h:156: error: `template&lt;class T&gt; class Coda' used without template parameters

这告诉你你已经输入了Coda 而不是Coda&lt;something&gt;

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++ - 错误:类型名/静态常量未声明(首先使用此函数)[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Scala 基础 :变量和数据类型

c#中的静态变量,怎么通过反射的方式获取指定变量名称的值呢?比如说一个const类型的常量:con

类变量 实例变量 常量 运算符

静态常量整数数组

004.参数方法定义

nodejs通过函数名进行静态方法调用出现类型错误,为啥?