实例化 redBlackTree 模板时出错

2023-12-25

我在用字符实例化 RedBlackTree 容器时遇到问题,但它可以与整数一起使用:

import std.stdio;
import std.container;

void main()
{
        auto r1 = redBlackTree!(int)();   // works
        auto r2 = redBlackTree!(char)();  // error instantiating
}

我正在使用 DMD32 D 编译器 v2.060。

有什么想法吗?谢谢。


您需要使用可比较的类型(即可以使用

char(和 wchar)仅适用于数组,因为char不一定与 unicode(UTF8 版本)中的实际字母相关,这还有其他问题会困扰 D 中的新编码员

dchar另一方面将始终对应于一个字母,因此可与另一个字母进行比较,

D 中的经验法则始终使用dchar除非它是字符串类型(甚至可以考虑使用 dstring)

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

实例化 redBlackTree 模板时出错 的相关文章

  • 模板特化与别名模板推导区别

    我很难理解在以下情况下演绎是如何工作的 template
  • 不同源文件中的 D 模板特化

    我最近问this https stackoverflow com questions 6328444 type classes in d有关如何在 D 中模拟类型类的问题 并建议了一种使用模板专业化来实现此目的的方法 我发现 D 无法识别不
  • std::integral_constant 的否定

    抱歉问了这么简单的问题 但我无法轻松找到答案 谷歌没有说任何关于 C 否定积分常量 和类似查询的有趣内容 C 11 中是否有任何特征使得std true type from std false type反之亦然 换句话说 我想要一些更具可读
  • 获取模板化对象方法的返回类型

    说我有 template
  • 如何从结构中提取索引最高的专业化?

    我正在尝试进行一些模板元编程 并且发现需要 提取 某种类型的某种结构的专门化的最高索引 例如 如果我有一些类型 struct A template
  • 在编译时计算小整数的阶乘

    我刚刚实现 再次 一个递归模板 用于在编译时计算整数的阶乘 谁会想到有一天我实际上会需要它 不过 我没有自己动手 而是去了Boost http www boost org 寻找答案 然而 特殊数学中的阶乘函数明确禁止将其与整数类型一起使用
  • D 退出语句

    D有没有退出语句 类似于java python c c 中的退出语句 哪一个会 令人震惊 退出程序的执行 就像是exit 如果你想exit 然后使用Cexit功能 import core stdc stdlib void main exit
  • C++14 元编程:在编译/初始化时自动构建类型列表

    使用 C 14 和 Curiously Recurring Template Pattern CRTP 的某种组合以及可能的Boost Hana http www boost org doc libs 1 63 0 libs hana do
  • C++ 模板递归检查 std::tuple 中的类型

    include
  • 模板元编程中三元运算符的替换

    我正在 C 中实现二项式系数 n 选择 k 函数 除了使用 正常 函数 在运行时评估 之外 还可以使用模板元编程来完成 当参数在编译时已知时 template
  • D的语法真的是上下文无关的吗?

    几个月前我在 D 新闻组上发布了这个问题 但由于某种原因 答案从未真正说服我 所以我想我应该在这里问 D 的语法显然是上下文无关的 http www digitalmars com d 2 0 template comparison htm
  • 在 D 中制作结构体的堆副本

    如何创建堆栈上结构的垃圾收集副本 来自 C 背景 我的第一个猜测是像下面这样的复制构造函数 但它对于 D 来说似乎不太惯用 而且我在我看过的任何 D 项目中都没有看到过这样的复制构造函数 struct Foo immutable int b
  • 如何在编译时捕获递归函数的结果?

    include
  • 使用 Dlang 计算目录中的文件数

    我想要一种简单的方法来使用 D 来计算目录中的文件数量 据我从 D 手册中可以看出 dirEntries 返回一个范围 但它没有长度属性 因此 我必须用计数器迭代结果 或者收集传统数组中的名称 我可以找到它的长度 有更好的方法吗 auto
  • 编译时模板参数计算

    我试图在编译时推断两个模板参数中较大的一个 两个模板参数的类型都是 size t 我有一个模板化类型 SomeType 它采用 size t 作为模板参数 然后 我有一个函数 它采用两个具有不同模板 size t 的 SomeType 参数
  • 2013 年更新了 D 的 GUI 库?

    我正在用 D 开发一个游戏 到目前为止 我真的很欣赏 D 语言 并且对于大多数库都有很好的绑定 现在 对于编辑器 我正在寻找一个便携式 GUI 库 wxD 或 DWT 似乎是不错的选择 但它们似乎被放弃了 因为最新的更新是几年前的 论坛上也
  • 编译时常量 id

    鉴于以下情况 template
  • 无法从 D 中的 std.range 中切片 Take!R?

    我正在尝试使用切片运算符从 std range 获取 take 函数的返回值的切片 我的代码 auto tempChunk a b c d auto a tempChunk take 3 writeln a 0 2 由于本例中的 Take
  • 不明确的元函数或未定义的类型

    我是元功能的新手 我想编写一个函数 将复合类型中某种类型的所有匹配项替换为其他类型 在示例中 replace
  • 在 D 中执行“指向非 const 的 const 指针”的正确方法?

    好的 根据http dlang org const faq html head const http dlang org const faq html head const在 D 中没有办法有一个指向非 const 的 const 指针 但

随机推荐

  • Ubuntu 20.04升级,Python缺少libffi.so.6

    我最近将操作系统升级到 Ubuntu 20 04 LTS 现在 当我尝试在 Python 中导入 Numpy 等库时 出现以下错误 ImportError libffi so 6 cannot open shared object file
  • 在 ASP.NET 中模拟会员用户

    在一个通用的asp net网站与Membership Roles并启用哈希密码 我想向管理员提供impersonation以便他们可以浏览该网站that用户会的 该网站应该像该用户登录一样运行 然后能够恢复到他们自己的登录状态 实现这一目标
  • 具有环境变量和可重写 CMD 的 ENTRYPOINT

    这允许 ENV VAR传递给foo ENTRYPOINT usr bin foo ENV VAR 这不会 因为传递的是文字字符串 ENV VAR 而不是环境变量的内容 ENTRYPOINT usr bin foo ENV VAR 这允许覆盖
  • Android 获取 Wifi 连接状态

    我目前正在使用NetworkRequest and NetworkCallback方法 谷歌官方推荐 获取Wifi连接状态 并且部分有效 我期待着onUnavailable 将在以下情况下被调用 close app gt turn off
  • Android - 创建可调整大小的视图

    我目前正在开发一个具有可移动和可调整大小视图的仪表板 我现在遇到的问题是我想通过触摸手势调整视图大小 因此 我想到了一个点 将其添加到选择视图中 可以拖动该点来调整所选视图的大小 这与 Android 主屏幕上的调整大小过程类似 即使经过长
  • 如何更改复选框、滑块、单选按钮和选择组件的强调色

    我想更改复选框 滑块 单选按钮和选择组件的强调色 有什么简单的方法可以做到这一点吗 您可以使用新的accent color财产 如果您正在使用Chrome 版本 93 https www chromestatus com feature 4
  • Symfony2 验证器约束 GreaterThan 其他属性

    我的验证是在 yaml 文件中定义的 如下所示 src My Bundle Resources config validation yml My Bundle Model Foo properties id NotBlank groups
  • Codeigniter 会话数据,它们只是 cookie 吗?

    我将在我的登录系统中使用 Codeigniter 的会话数据 但首先我想了解它们 所以我阅读了用户指南 据我了解 Codeigniter 的会话数据是just饼干 这是真的 这意味着如果用户禁用 cookie 他将无法使用 Codeigni
  • 从整数列表中,获取最接近给定值的数字

    给定一个整数列表 我想找到哪个数字最接近我在输入中给出的数字 gt gt gt myList 4 1 88 44 3 gt gt gt myNumber 5 gt gt gt takeClosest myList myNumber 4 有什
  • pytorch.empty 函数中未初始化的数据是什么

    我正在经历pytorch教程并遇到了pytorch empty功能 有人提到空可以用于未初始化的数据 但是 当我打印它时 我得到了一个值 这和有什么区别pytorch rand它还生成数据 我知道 rand 生成 0 到 1 之间的值 下面
  • “System.MissingMemberException:无法找到服务器工厂”启动 Microsoft.Owin 在 TeamCity 中自托管

    当 Teamcity 运行启动自托管 Web 应用程序的集成测试时 测试失败并显示错误 System MissingMemberException The server factory could not be located for th
  • 在 Jenkins 声明性管道中使用 waitForQualityGate

    Jenkins 2 50 中声明性管道中的以下 SonarQube 6 3 分析阶段失败 并在控制台日志中显示此错误 http pastebin com t2ja23vC http pastebin com t2ja23vC 进一步来说 此
  • Asp.Net Core 2.0+ 中模型验证之前的模型标准化

    我在用着自动模型验证 https blogs msdn microsoft com webdev 2018 02 02 asp net core 2 1 roadmap 参见 更好的输入处理 保持我的控制器干净 所以 HttpPost Pr
  • C# 到 C++ 数组?

    我提供了一个库 我知道它使用 C 我这样导入DLL DllImport pst private static extern int pst get sensor ref PSTSensor sensor PSTSensor 是一个结构体 在
  • Android如何对JSONObjects的JSONArray进行排序

    我制作了一个 jsonobjects 的 jsonarray 现在我需要根据 jsonobjects 中的值对 JSONArray 进行排序 以前我对自定义对象的 ArrayList 进行排序 如下所示 比较器 public class K
  • 函数的推导

    假设我们有一个这样的类模板 template
  • D3D11VA/CUDA 与 NV12 表面的互操作性问题

    我正在尝试构建一个转码管道 其中使用 D3D11VA 对视频进行解码 然后将其引入 CUDA 可以选择使用 CUDA 内核进行修改和 或分析 最后使用 NVENC 进行编码 使用 CUDA NVENC 互操作 想法是在 GPU 上完成所有操
  • 如何防止 Razor 在使用嵌套显示模板时向输入添加前缀?

    当我使用嵌套显示模板并通过 HTML 帮助程序添加输入元素时 Razor 引擎会向字段名称添加前缀 我确实理解这样做是为了保证页面级别输入名称的唯一性 并在回发时重建整个模型 然而 我有许多执行临时操作的小表单 并且我既不需要名称唯一性 也
  • 有效 Java hashCode() 实现中的位移位

    我想知道是否有人可以详细解释一下 int l l gt gt gt 32 在以下 hashcode 实现中执行操作 由 eclipse 生成 但与有效 Java 相同 private int i private char c private
  • 实例化 redBlackTree 模板时出错

    我在用字符实例化 RedBlackTree 容器时遇到问题 但它可以与整数一起使用 import std stdio import std container void main auto r1 redBlackTree int works