问题标签 [d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
518 浏览

.net - .Net 在哪里获得 D

我在哪里可以获得 .Net 框架的 D?

0 投票
8 回答
4067 浏览

d - 我应该使用 Phobos 还是 Tango?

我决定学习 D,我想知道我应该使用哪个标准库。我应该使用 Phobos 还是 Tango?各自的优缺点是什么?

0 投票
2 回答
3969 浏览

user-interface - 使用 D 进行跨平台 GUI 编程

我想从 D 开始编程。我有一个需要 GUI 的简单应用程序,但我想确保它同样好地移植到 Linux/Windows/Mac,并且每个平台的更改最少(无)。

wxD 看起来像是首选的竞争者,因为我已经知道 wx 工具包。

我将 fltk4d 视为 Qt 的竞争者和(未完成的)包装器。

是否有任何其他真正跨平台的 D 图形用户界面工具包可以毫不费力地到达我想要的地方?这里的人们选择的工具包是什么?

0 投票
4 回答
270 浏览

d - 有没有办法确保成员函数在 D 中是虚拟的?

据我了解,所有成员函数在 D 中都是虚拟的,但是如果编译器看到它们从未被覆盖,则可以自由地将函数设为非虚拟。

我不清楚的是,当您编译一个未覆盖成员函数的模块然后将该模块导入您覆盖成员函数的其他地方时会发生什么。我认为它不会重新编译原始模块。它是否只是假设任何具有外部链接的成员函数都是虚拟的?

0 投票
3 回答
188 浏览

templates - D 模板:对类型列表进行排序

假设您有如下类型:

假设接口如下所示,您将如何对这些类型的列表进行排序:

如果可以提供更好的解决方案,您可以使用 D 2.x 功能,但请说明您是否这样做。

我会在一天左右发布我的解决方案。:)

0 投票
4 回答
887 浏览

d - D标准库的现状如何?

其中有两个,Phobos 和 Tango。据我所知,它们是多余且不兼容的。有加入他们的计划吗?如果是这样,什么时候会发生?

0 投票
9 回答
13664 浏览

performance - 提高光线追踪器的性能

我正在用 D ( http://dsource.org/projects/stacy ) 编写一个相对简单的光线追踪器/路径追踪器,但即使经过全面优化,每条光线仍需要数千个处理器周期。我还能做些什么来加快速度吗?更一般地说,您知道光线追踪的良好优化/更快的方法吗?

编辑:这是我已经在做的。

  • 代码已经高度并行运行
  • 临时数据以缓存高效的方式结构化,并与 16b 对齐
  • 屏幕分为 32x32 块
  • 目标数组的排列方式使得块中的所有后续像素在内存中都是连续的
  • 执行基本场景图优化
    • 对象的常见组合(如盒子中的平面 CSG)被预先优化的对象替换
  • 能够利用 GDC 的自动矢量化支持的矢量结构
  • 射线上的后续命中是通过惰性求值找到的;这可以防止对 CSG 进行不必要的计算
  • 既不支持也不优先的三角形。仅普通图元,以及 CSG 操作和基本材料属性
  • 支持边界
0 投票
3 回答
632 浏览

serialization - 我需要一个 D 的序列化框架

我正在寻找一个D 模板库来获取任意变量并将其编组为可传输的包。变量可能是基本值类型 ( int, char[], real) 或者可能是一个structclass甚至可能包含或是一个引用类型。一个可以在没有任何类型帮助的情况下做到这一点的系统会很好,但我怀疑它的要求太多了,所以我会对使用轻量级注释的东西感到满意。

如果没有类似的关于如何构建的建议,那就太好了。我可以想到几种方法来进行消毒,但我不确定如何指定注释。

背景:在尝试使用 ASMX 和 WCF Web 服务并且不喜欢它们之后,我感觉我想尝试解决 RPC 问题。

编辑:顺便说一句,只要它是可移植的,我不太关心中间的格式是什么(XML、JASON、YAML、二进制)。

0 投票
2 回答
2476 浏览

sockets - 如何使用 std.socket 和 std.socketstream?(D 编程语言 2.x)

我想知道如何使用那些火卫一模块来使用网络?

或者您可以参考如何使用套接字(以类似于或几乎类似于D的方式)

0 投票
2 回答
144 浏览

abstraction - 编写抽象(兼容性)层时应该使用什么:函子、接口或抽象方法?(D语言)

例如:脚本对象(如字符串、数组)或脚本引擎(eval()、readFile() 等)之间的兼容性层。