无法识别的模板声明/定义

2024-02-07

我正在尝试实现一个堆,但我的其中一个函数出现了上述错误。

这是我的头文件:

template <typename E>
class Heap
{
private:
    class Node {
        E data;
        Node * left;
        Node * right;
    };

    Node root;
    int length;

    E * preorder(E * list, int length, Node node);
    E * inorder(E * list, int length, Node node);
    E * postorder(E * list, int length, Node node);
    void clear(Node node);  //Recursively clears all nodes and frees all pointers
public:
    Heap();
    Heap(E * list, int length);
    ~Heap();

    Node * getRoot();
    void buildHeap(E * list, int length);
    E * returnList();
};

以及有问题的特定功能(尽管其他功能也有类似的错误)。第二行有错误

template <typename E>
Node<E> * Heap<E>::getRoot() {
    return &root;
}

编译器抱怨Node<E>;没有名为的模板Node在全球范围内。代码必须说它是成员模板:

template <typename E>
typename Heap<E>::Node * Heap<E>::getRoot() {
    return &root;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法识别的模板声明/定义 的相关文章

  • 尝试了解使用服务打开对话框

    我已经阅读了有关使用 mvvm 模式打开对话框的讨论 我看过几个使用服务的示例 但我不明白所有部分如何组合在一起 我发布这个问题寻求指导 以了解我应该阅读哪些内容 以更好地理解我所缺少的内容 我将在下面发布我所拥有的内容 它确实有效 但从我
  • 使用 CMake 时如何导出 Emscripten 中的 C 函数

    In 本教程 https emscripten org docs porting connecting cpp and javascript Interacting with code html interacting with code
  • java中如何重新初始化int数组

    class PassingRefByVal static void Change int pArray pArray 0 888 This change affects the original element pArray new int
  • 有些有助于理解“产量”

    在我不断追求少吸的过程中 我试图理解 产量 的说法 但我不断遇到同样的错误 someMethod 的主体不能是迭代器块 因为 System Collections Generic List 不是迭代器接口类型 这是我被卡住的代码 forea
  • 无法注册时间触发的后台任务

    对于 Windows 8 应用程序 在 C Xaml 中 我尝试注册后台任务 很难说 但我想我的后台任务已正确注册 但是当我单击调试位置工具栏上的后台任务名称时 我的应用程序停止工作 没有任何消息 我查看了事件查看器上的日志 得到 具有入口
  • Eigen 和 OpenMP:由于错误共享和线程开销而没有并行化

    系统规格 Intel Xeon E7 v3 处理器 4 插槽 16 核 插槽 2 线程 核心 Eigen 系列和 C 的使用 以下是代码片段的串行实现 Eigen VectorXd get Row const int j const int
  • 如何使用 x64 运行 cl?

    我遇到了和这里同样的问题致命错误 C1034 windows h 未设置包含路径 https stackoverflow com questions 931652 fatal error c1034 windows h no include
  • 如何将AVFrame转换为glTexImage2D使用的纹理?

    如您所知 AVFrame 有 2 个属性 pFrame gt data pFrame gt linesize 当我从视频 sdcard test mp4 android平台 读取帧后 并将其转换为RGB AVFrame副 img conve
  • 如何递归取消引用指针(C++03)?

    我正在尝试在 C 中递归地取消引用指针 如果传递一个对象 那就是not一个指针 这包括智能指针 我只想返回对象本身 如果可能的话通过引用返回 我有这个代码 template
  • 如果输入被重定向则执行操作

    我想知道如果我的输入被重定向 我应该如何在 C 程序中执行操作 例如 假设我有已编译的程序 prog 并且我将输入 input txt 重定向到它 我这样做 prog lt input txt 我如何在代码中检测到这一点 一般来说 您无法判
  • 在 C# 中为父窗体中的子窗体控件添加事件处理程序

    我有两种形式 一种是带有按钮和文本框的父表单 单击该按钮时 将打开一个对话框 该子窗体又包含一个文本框和一个按钮 现在我想要的是 每当子表单文本框中的文本更改时 父表单文本框中的文本会自动更改 为了获得这个 我所做的是 Form3 f3 n
  • memcpy/memmove 到联合成员,这是否设置“活动”成员?

    重要说明 一些评论者似乎认为我是从工会抄袭的 仔细看memcpy 它从普通旧地址复制uint32 t 它不包含在联合中 另外 我正在复制 通过memcpy 到工会的特定成员 u a16 or u x in a union 不直接到整个联盟本
  • 如何在 C# 中创建异步方法?

    我读过的每一篇博客文章都会告诉您如何在 C 中使用异步方法 但由于某些奇怪的原因 从未解释如何构建您自己的异步方法来使用 所以我现在有这段代码使用我的方法 private async void button1 Click object se
  • Oauth2中如何同时撤销RefreshToken和使AccessToken失效

    我正在使用 Owin Oauth2 授权和资源服务器相同 开发单页面应用程序 AngularJS Net MVC Json Rest API 的身份验证流程 我选择了 Bearer Token 路由而不是传统的 cookie session
  • 比较:接口方法、虚方法、抽象方法

    它们各自的优点和缺点是什么 接口方法 虚拟方法 抽象方法 什么时候应该选择什么 做出这一决定时应牢记哪些要点 虚拟和抽象几乎是一样的 虚方法在基类中有一个实现 可以选择重写 而抽象方法则没有 并且must在子类中被覆盖 否则它们是相同的 在
  • 模板类中的无效数据类型生成编译时错误?

    我正在使用 C 创建一个字符串类 我希望该类仅接受数据类型 char 和 wchar t 并且我希望编译器在编译时使用 error 捕获任何无效数据类型 我不喜欢使用assert 我怎样才能做到这一点 您可以使用静态断言 促进提供一个 ht
  • 如何解压 msgpack 文件?

    我正在将 msgpack 编码的数据写入文件 在编写时 我只是使用 C API 的 fbuffer 如 我为示例删除了所有错误处理 FILE fp fopen filename ab msgpack packer pk msgpack pa
  • Visual Studio 2015 - Web 项目上缺少共享项目参考选项卡

    我从 MSDN 订阅升级到 Visual Studio 2015 因为我非常兴奋地阅读有关共享项目的信息 当我们想要做的只是重用代码时 不再需要在依赖项中管理 21382 个 nuget 包 所以我构建了一个测试共享项目 其中包含一些代码
  • 为什么空循环使用如此多的处理器时间?

    如果我的代码中有一个空的 while 循环 例如 while true 它将把处理器的使用率提高到大约 25 但是 如果我执行以下操作 while true Sleep 1 它只会使用大约1 那么这是为什么呢 更新 感谢所有精彩的回复 但我
  • MySqlConnectionStringBuilder - 使用证书连接

    我正在尝试连接到 Google Cloud Sql 这是一个 MySql 解决方案 我能够使用 MySql Workbench 进行连接 我如何使用 C 连接MySqlConnectionStringBuilder 我找不到提供这三个证书的

随机推荐

  • 如何选择 HTML5 画布形状?

    我有一个 HTML5 画布 在上面绘制了几个形状 我想要发生的是 当鼠标单击任何形状时 应该选择该形状 至少它可以告诉选择了哪种形状 谢谢 尝试使用现有的画布库 或创建您自己的 该库在选择形状时会发生事件 下面的示例使用动力学 JS 库 h
  • Backbone.js 和 Require.js:不匹配的匿名 Define() 模块:function (_, Backbone) {

    我刚开始使用 require js 并且将以下 app js 文件作为我的主干应用程序的一部分 require config baseUrl js paths jquery libs jquery 2 1 0 underscore libs
  • Keras ConvLSTM2D:输出层上的 ValueError

    我正在尝试训练 2D 卷积 LSTM 以根据视频数据进行分类预测 然而 我的输出层似乎遇到了问题 ValueError 检查目标时出错 预期dense 1 有 5 个维度 但得到了形状为 1 1939 9 的数组 我当前的模型基于ConvL
  • 在 C# 中接受浮点不准确有什么好处

    我一直在想这个问题last https stackoverflow com questions 4598416 fourier transform rounding error few https stackoverflow com que
  • 当我有 hive-site.xml 时,hive shell 无法打开

    我已经在我的VM播放器中安装了ubuntu 14和hadoop 2 6 0以及Hive 0 14 0 在我的 Hive conf 中没有 Hive site xml 所以我创建了一个新文件 但是当我打开 Hive shell 时出现错误 如
  • knitr kable (Sweave) 中的 LaTeX 数学表达式

    是否可能以及如何在 knit Sweave 报告中使用 LaTeX 数学表达式kable 在下面的例子中 x 2 被呈现为 原样 With xtable 对于下面的示例 我将使用该选项sanitize colnames function f
  • 创建指向非静态类成员函数的类成员指针函数变量

    目标是拥有成员变量 AddValue指向CreateFirstValue类初始化时和第一次调用后的函数AddValue 所有未来对它的调用都将调用CreateAnotherValue 以前 我只有一个AddValue带有条件检查的函数以确定
  • Android 中的 Fling 手势和 Webview

    我有一个 webview 控件 需要支持 Android 中的 fling 手势 以便调出新记录 加载新数据 这是在扩展 Activity 的类中发生的 我见过的所有示例都展示了如何实现对文本视图的手势支持 但没有展示对网络视图的手势支持
  • 使用()创建对象与不使用()创建对象的区别

    我刚刚遇到问题 error request for member show in myWindow which is of non class type MainGUIWindow 当尝试编译一个简单的 qt 应用程序时 include
  • 忽略 New Relic 中的持久 SignalR 连接

    我应该打电话到哪里NewRelic Api Agent NewRelic IgnoreApdex or NewRelic Api Agent NewRelic IgnoreTransaction 在我的 SignalR 集线器中以防止长时间
  • DataGrid 内 ComboBox 上的 ItemSsource 绑定

    DataGrid 内的组合框未填充列表 我认为 ItemSource Path 有问题 查看 DataGrid 的 xaml 代码
  • MVC 4 Razor 文件上传

    我是 MVC 4 的新手 我正在尝试在中实现文件上传控制 我的网站 我无法找到错误 我得到的是空值 我的文件中的值 控制器 public class UploadController BaseController public Action
  • “Function.call.bind(Function.bind)”是什么意思?

    我需要你的帮助 我被这些代码行困住了 var bind Function call bind Function bind bind CC Components 我试图理解它们是什么以及它们如何工作 但我不能 有人可以帮助清楚地解释它们是如何
  • 自定义字符串分隔符 stringtemplate-4

    我正在尝试在 android 中使用 stringtemplate 4 引 擎 但我需要起始分隔符 而结束分隔符应该是 在这里 我认为只允许使用字符分隔符 那么如何使用字符串分隔符呢 提前致谢 StringTemplate 仅支持使用单个字
  • Tornadofx - 如何在每个实例上将参数传递给 Fragment

    我是javafx kotlin 和tornadofx 的新手 Issue 如何在每个实例上将参数传递给 Fragment 假设我有一个表视图布局作为我的片段 现在这个片段在多个地方使用 但具有不同的数据集 例如 添加片段 class Som
  • jest 从承诺中模拟 jQuery 函数

    我有一个调用 jQuery 函数的函数 jQuery 函数称为dataFunc并且应该返回一个对象 我想测试承诺 而不是dataFunc功能 为此 我想嘲笑这样的回应dataFunc应该返回 我想要这一行const data await s
  • C++ 初始化列表功能:调用函数而不初始化成员?

    这是一个关于 C 初始化列表语法的问题 是否可以从初始化列表中调用函数而不将它们作为成员对象构造函数的参数 下面列出的代码示例是根据工作中的类似情况进行解释 paracoded 情况 成员变量采用指向单例的指针作为构造函数 争论 成员变量由
  • 如何使用数据注释来验证可为 null 的 int

    在 MVC 5 项目中 我有一个具有可为 null int 的模型 由于可能无法解释的原因 它需要是一个可为 null 的 int 并且不能是一个字符串 Value can be null or an integer from 0 to 1
  • 如何自定义 application.hbs 模板的视图元素?

    在 ember cli 生成的应用程序中 application hbs 生成的 html 被包装在视图中 div class ember view div 如果我创建一个组件 我有一个 component name js 文件 我可以在其
  • 无法识别的模板声明/定义

    我正在尝试实现一个堆 但我的其中一个函数出现了上述错误 这是我的头文件 template