需要类型名错误(模板相关错误)

2024-04-22

我在另一个模板化的类中有一个名为 node 的类。 Node 类的一些方法返回 Node 指针。这是我如何实施的摘录

 template <typename T>
 class myClass{
 ....
     class Node{
         Node* getNodePointer();
         ...
     }
 }     
 ... 
 template <typename T>
 myClass<T>::Node* myClass<T>::Node::getNext()  
 { return next;  }

当我编译上面的代码时,出现此错误“ myClass.h:138:1: error: need ‘typename’ before ‘myClass::Node’ because ‘myClass’ is a dependentscope”。我该如何解决这个问题?非常感谢


澄清一下,编译器不知道myClass<T>::Node现在或将来都将是一种类型。可以这样想:

template <typename T>
class A
{
public:
    typedef T value_type;
};

template <typename T>
class B
{
public:
   typename A<T>::value_type x;
};

template <> A<int> { public: static int value_type=10;}

您必须向编译器承诺该类型是类型名。它默认假设它是一个值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

需要类型名错误(模板相关错误) 的相关文章

  • Web 客户端和 Expect100Continue

    使用 WebClient C NET 时设置 Expect100Continue 的最佳方法是什么 我有下面的代码 我仍然在标题中看到 100 continue 愚蠢的 apache 仍然抱怨 505 错误 string url http
  • ASP.NET MVC:这个业务逻辑应该放在哪里?

    我正在开发我的第一个真正的 MVC 应用程序 并尝试遵循一般的 OOP 最佳实践 我正在将控制器中的一些简单业务逻辑重构到我的域模型中 我最近一直在阅读一些内容 很明显我应该将逻辑放在域模型实体类中的某个位置 以避免出现 贫血域模型 反模式
  • 用于检查类是否具有运算符/成员的 C++ 类型特征[重复]

    这个问题在这里已经有答案了 可能的重复 是否可以编写一个 C 模板来检查函数是否存在 https stackoverflow com questions 257288 is it possible to write a c template
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很
  • 从Web API同步调用外部api

    我需要从我的 Web API 2 控制器调用外部 api 类似于此处的要求 使用 HttpClient 从 Web API 操作调用外部 HTTP 服务 https stackoverflow com questions 13222998
  • 如何使用 ICU 解析汉字数字字符?

    我正在编写一个使用 ICU 来解析由汉字数字字符组成的 Unicode 字符串的函数 并希望返回该字符串的整数值 五 gt 5 三十一 gt 31 五千九百七十二 gt 5972 我将区域设置设置为 Locale getJapan 并使用
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • C# 中通过 Process.Kill() 终止的进程的退出代码

    如果在我的 C 应用程序中 我正在创建一个可以正常终止或开始行为异常的子进程 在这种情况下 我通过调用 Process Kill 来终止它 但是 我想知道该进程是否已退出通常情况下 我知道我可以获得终止进程的错误代码 但是正常的退出代码是什
  • 使用 WebClient 时出现 System.Net.WebException:无法创建 SSL/TLS 安全通道

    当我执行以下代码时 System Net ServicePointManager ServerCertificateValidationCallback sender certificate chain errors gt return t
  • 使用 Bearer Token 访问 IdentityServer4 上受保护的 API

    我试图寻找此问题的解决方案 但尚未找到正确的搜索文本 我的问题是 如何配置我的 IdentityServer 以便它也可以接受 授权带有 BearerTokens 的 Api 请求 我已经配置并运行了 IdentityServer4 我还在
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 使用 x509 证书签署 json 文档或字符串

    如何使用 x509 证书签署 json 文档或字符串 public static void fund string filePath C Users VIKAS Desktop Data xml Read the file XmlDocum
  • 覆盖子类中的字段或属性

    我有一个抽象基类 我想声明一个字段或属性 该字段或属性在从该父类继承的每个类中具有不同的值 我想在基类中定义它 以便我可以在基类方法中引用它 例如覆盖 ToString 来表示 此对象的类型为 property field 我有三种方法可以
  • 链接器错误:已定义

    我尝试在 Microsoft Visual Studio 2012 中编译我的 Visual C 项目 使用 MFC 但出现以下错误 error LNK2005 void cdecl operator new unsigned int 2
  • 通过指向其基址的指针删除 POD 对象是否安全?

    事实上 我正在考虑那些微不足道的可破坏物体 而不仅仅是POD http en wikipedia org wiki Plain old data structure 我不确定 POD 是否可以有基类 当我读到这个解释时is triviall
  • 将控制台重定向到 .NET 程序中的字符串

    如何重定向写入控制台的任何内容以写入字符串 对于您自己的流程 Console SetOut http msdn microsoft com en us library system console setout aspx并将其重定向到构建在
  • IEnumreable 动态和 lambda

    我想在 a 上使用 lambda 表达式IEnumerable
  • 哪种 C 数据类型可以表示 40 位二进制数?

    我需要表示一个40位的二进制数 应该使用哪种 C 数据类型来处理这个问题 如果您使用的是 C99 或 C11 兼容编译器 则使用int least64 t以获得最大的兼容性 或者 如果您想要无符号类型 uint least64 t 这些都定
  • 使用.NET技术录制屏幕视频[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有一种方法可以使用 NET 技术来录制屏幕 无论是桌面还是窗口 我的目标是免费的 我喜欢小型 低

随机推荐

  • 在领域表中选择随机行

    我想从领域表中选择一个随机行 就像是 SELECT FROM table ORDER BY RANDOM LIMIT 1 像这样的事情就可以了 是吗 Random random new Random RealmResults
  • 使用底图扭曲图像保持透明度

    我有一张 RGBA png 地图 所有海洋都是透明的 我想在北极立体投影中使用底图 并使用带有扭曲图像的地图 当我想保留透明度时 透明度会丢失并被黑色取代 我能做些什么 我的最终目标是在海洋中绘制颜色网格 然后在其上方绘制透明地图 from
  • 如何在 SwiftUI TextField 中将文本加粗?

    从 Xcode 11 2 1 开始 SwiftUI 中的文本字段没有内置的字体粗细修饰符 我们如何在不将 UITextField 扩展为 UIViewRepresentable 的情况下引入 font weight 使用与 SwiftUI
  • package-lock.json 中的 `"dev" true` 是做什么用的?

    什么是 dev true意味着在package lock json file 就我而言 当我执行时它会自动更新npm运营 我们怎样才能去除它呢 所以回答你的第一个问题 dev true in package lock json意味着这个依赖
  • Qt、QML 和 Windows 8 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我一直对Qt框架引入的QML很好奇 但从未有机会使用它 但现在随着 Windows 8 的到来 基于旧式小部件的界面将变得过时 只是我
  • Tkinter:在主循环中调用事件

    如何调用 tkinterevent来自一个单独的对象 我正在寻找类似 wxWidgets 的东西wx CallAfter 例如 如果我创建一个对象 并将我的对象传递给它Tkroot 实例 然后尝试从我的对象调用该根窗口的方法 我的应用程序锁
  • Rest API 和 Restful Web 服务之间的区别

    我是网络服务新手 有人可以帮助我理解 REST API 和 java 中的 Restful Web 服务之间的区别吗 我开发了一个仅基于 servlet 和 jsp 的 Web 应用程序 现在必须使用 REST API 开发相同的应用程序
  • 使用Prepared Statement,如何返回插入行的id?

    我想检索数据库中插入行的 ID 但我不知道该怎么做 我尝试使用 SQL 子句返回RETURNING id 但不起作用 插入行后如何返回id 拨打电话后execute 准备语句上的方法 插入行的 id 将在insert id属性 pstm g
  • 通过管道从子shell获取退出代码

    我怎样才能获得退出代码wget来自子shell进程 所以 主要问题是 等于0 哪里可以 8成立 gt OUT wget q http budueba com net tee a file txt echo 0 它的工作原理无需tee 实际上
  • 编译错误:无法打开模块文件

    我有这个代码 PROGRAM xfit driver for routine fit USE nrtype USE nrutil USE nr USE ran state ONLY ran seed IMPLICIT NONE INTEGE
  • Android AlarmManager 与 Handler 的不同情况

    有人可以通过示例向我解释使用 AlarmManager 与 Handler 的不同情况吗 使用这两者交替使用有什么缺点吗 Thanks 他们彼此之间没有什么关系 我假设你指的是使用类似的东西postDelayed on Handler用于轮
  • 如何从Python中列表的字典中的值生成所有组合

    我想生成在字典中索引的列表中的所有值组合 A D E B F G H C I J 每次 每个字典条目的一项都会被选择并与其他键中的项目组合 所以我有 D F I D F J D G I D G J D H I E H J 我知道有一些东西可
  • Unity静态工厂扩展

    我似乎无法在任何地方找到 Microsoft Practices Unity StaticFactory dll 还有其他注册静态工厂的方法吗 寻找类似的东西 容器 RegisterFactory gt FooFactory CreateF
  • 使用箭头键导航 Material-ui 列表

    我正在使用material ui 来制作电子应用程序 有些屏幕是主从结构 我使用列表来显示概述 我希望能够使用箭头键浏览此列表 有内置选项可以执行此操作吗 如果它不是内置的 那么最好的方法是什么 Update 我现在制作了自己的组件 不确定
  • ASP.NET Core 2 - 使用 IISExpress 使用自定义域名和 ssl 进行开发

    我希望能够使用自定义域和 ssl 而不是本地主机进行本地开发 如何在 VS 解决方案中设置自定义域 ssl 而不是 localhost 简单设置 使用服务器 URL 如果您想关联您的服务器以使用分配给服务器 网络主机的所有 IP 地址 那么
  • 如何修复 boto3 中不存在用户池 ********

    我是新来的AWS https aws amazon com and boto 3 https boto3 amazonaws com v1 documentation api latest index htmlPython SDK 我配置了
  • Dapper 与 SQLite 和 C# 错误“为命令提供的参数不足”

    自原始帖子以来的新信息 这段代码成功检索了一个实体 这让我认为 QueryMultiple 映射与 Query 不同 真的吗 using var multi sqlConn QueryMultiple sqlStmt new Mytable
  • 当与curl一起使用--negotiate时,是否需要keytab文件?

    The 文档 http hadoop apache org docs stable hadoop project dist hadoop hdfs WebHDFS html描述如何连接到 kerberos 安全端点显示以下内容 curl i
  • 'CALL "C:\Program Files\nodejs\\node_modules \npm\bin\npm-cli.js" 前缀 -g' 不被识别为内部或外部命令,

    C Users MNE GO DIGITAL gt npm CALL C Program Files nodejs node exe C Program Files nodejs node modules npm bin npm cli j
  • 需要类型名错误(模板相关错误)

    我在另一个模板化的类中有一个名为 node 的类 Node 类的一些方法返回 Node 指针 这是我如何实施的摘录 template