d相关内容

是否可以在不运行单元测试的情况下编译unittest并为特定模块显式运行unittest?

我在开发API时经常在主函数中编写测试代码,但由于D已集成单元测试,所以我想开始使用它们。 我当前的工作流程是在下面的代码中,我有一个脚本来监视任何.d文件中的文件更改,如果脚本找到修改后的文件,它将运行 dub build 问题在于 dub构建似乎没有构建单元测试 module foo struct Bar {..} unittest { ... //一 ..
发布时间:2020-10-14 20:34:35 其他开发

D中的单线程将来/承诺?

我看到D有期货,并且可以创建线程,但是是否有类似“ Dart”的期货/承诺(或者,如果您使用的是库,我猜是JavaScript)吗? 我希望能够编写这样的代码- // //不是D代码,因为我记不清所有语法! // auto fut = myfile.read(); fut.then(function(data){ //当将来完成 }时异步处理数据; ..
发布时间:2020-10-14 20:34:31 其他开发

做“指向非常量的常量指针”的正确方法在D?

好,根据 http://dlang.org/const-faq.html# head-const 不能在D中具有指向非const的const指针。但是有一个好的实践:在const类中声明一个字段,如果您忘记初始化它,编译器会告诉您。有什么方法可以保护自己,避免忘记D中类的初始化指针字段? 解决方案 是: void main(){ // ConstPointerToNonConst ..
发布时间:2020-10-14 20:34:29 其他开发

D语言:初始化动态多维数组最佳实践?

请问这是否是在 D 中初始化动态多维数组的最佳实践。在他们的语言参考中有关于数组的部分,但我不确定它是否超出了我要完成的工作。 class Map { Tile [] [] tile; this(单位宽度,单位高度){ tile.length = height; foreach(ref tilerow; tile) tilerow.length = width; } ..
发布时间:2020-10-14 20:34:21 其他开发

如何在D程序中链接到D库

我是D编程语言的新手,有一个非常简单的问题。 我想一次编译一个D脚本库,然后在其他库中使用它D项目。 在CI中链接到.lib文件并为其创建了标头,但在DI中找不到类似的东西(甚至还有某种标头) 我将D-IDE用作IDE,将DMD2用作编译器。 解决方案 有.di(D接口)文件可用作标题,这些文件可通过-H编译器开关从您的源文件生成。 无论如何,我见过的库将只包含要导 ..
发布时间:2020-10-14 20:34:19 其他开发

为什么不能在D中实现结构的默认构造函数?

编写代码 struct S { this()//编译时错误 { } } 给我一​​个错误消息说 仅允许使用@disable且没有主体的结构的默认构造函数。 为什么? 解决方案 这种情况之一比最初预期的要复杂得多。 D与C ++相比,重要且有用的功能之一是,每个单个类型(包括所有用户类型)都有一些初始的非垃圾值,可以在编 ..
发布时间:2020-10-14 20:33:13 其他开发

如何在D中为函数输入按名称的参数?

我正在努力通过名称将参数传递给已定义默认参数值的函数: 导入std.stdio; void main(){ void foo(int x = 1,int y = 2,int z = 3){ writefln(“ x =% s,y =%s,z =%s“,x,y,z); } foo(10,20,30); //可以打印:x = 10,y = 20,z = 30 f ..
发布时间:2020-10-14 20:33:07 其他开发

D有“新类型”吗?

D是否有'newtype'(如在Haskell中一样)。 这是一个天真的问题,因为我只是略读D,但Google并未出现有用的东西。 在Haskell中,这是一种使不同类型的同一事物在编译时有所区别的方式,但不会导致任何运行时性能损失。 例如您可以将米,秒和公斤设置为新类型(双精度)。如果您的程序将以米为单位的数量添加到以秒为单位的数量中,则在编译时会出错,但是在运行时就像两个都是 ..
发布时间:2020-10-14 20:32:02 其他开发

即时加载插件(DLL)

是否有一种方法可以在D中动态地从DLL动态加载和调用函数?我希望我的程序能够在启动时也可能在运行时加载插件。 解决方案 它取决于您想要获得的动态。如果要动态加载dll并运行一些预定义的函数,那么Wei Li提供了一个非常好的包装器此处。借助模板的强大功能,它使您可以执行以下操作: //定义函数 别名Symbol !(“ MessageBoxW”,int function(HWND, ..
发布时间:2020-10-14 20:31:58 其他开发

如何从头开始创建/编写一个简单的XML解析器?

如何从头开始创建/编写一个简单的XML解析器? 我想知道英文的简化基本步骤是什么,而不是代码示例。 / p> 一个好的解析器如何设计?我知道不应该在解析器中使用正则表达式,但是正则表达式在解析XML中的作用是多少? 推荐使用什么数据结构?我应该使用链接列表来存储和检索节点,属性和值吗? 我想学习如何创建XML解析器,以便可以在D编程中编写一个语言。 解决方案 如果您 ..
发布时间:2020-10-14 20:31:56 其他开发

D语言是否具有多个标准库和GC问题?

我想知道D的成熟度和稳定性,以及它是否可以很好地替代C / C ++。 我知道目前有两种标准库(Phobos和Tango)。还是没有统一的标准库吗? 另外我前段时间听说这些语言在GCed /非GCed代码的边界上存在问题。我在D网站上找不到关于它的任何参考,所以这个问题仍然存在吗? 解决方案 D版本1它既成熟又稳定,肯定有人在实际工作中使用它。 Phobos是D曾经拥有或可能曾 ..
发布时间:2020-10-14 20:31:52 其他开发

使用D语言进行应用程序开发

对于那些使用D开发应用程序的人, 您使用哪个库来构建应用程序? 这些库有很好的文档记录? 您使用过Tango吗? 您是否认为D准备好构建大型应用程序了? 您使用了哪个IDE? 解决方案 请注意,任何C库都可以与D一起使用,因为D可以完全使用支持C ABI。 D对C ++库的支持有限,但对C ++模板库的支持有限。 ..
发布时间:2020-10-14 20:31:48 其他开发

游戏开发的D编程语言

最近我感到不安,因为我达到了C ++(甚至0x)感觉非常有限的地步,所以我开始寻找替代方案。 忘记Java, C#,Python或Ruby。我仍然喜欢C ++的低级特性,而且我不喜欢虚拟机。此外,我是游戏引擎开发人员,因此我必须开发必须非常快速的核心例程,最近我一直渴望代码表现力。 C ++对我来说是一种几乎全部的语言,但是在使用模板方面有很多例外,GCC并没有像我希望的那样优化内容。 ..
发布时间:2020-10-14 20:31:43 其他开发

现实世界中的D编程语言?

外面有人在实际应用中使用D吗?如果是这样,您将其用于什么? 尽管缺少知名的大用户,但D似乎对我来说是一种非常令人发指的语言,而且根据 TIOBE 来说,它很受欢迎。 解决方案 我在计算机图形学领域的研究工作中使用了D。我和其他人已经基于使用D完成的工作在我们的领域发表了论文。我认为它绝对可以用于对性能至关重要的中小型研究项目。非常适合研究工作,因为无论如何您通常都是从头开始,因此您无 ..
发布时间:2020-10-14 20:31:40 其他开发

D lang-在同一程序中使用read和readln()

我在D程序中遇到一个非常奇怪的问题。 read(“%s”,variable)本身可以正常工作,而readln(variable)本身可以正常工作,但是当我将两者放在一起时,readln()似乎被传递了。 import std.stdio;会同时发生错误。 import std.string; void main() { int x; write(“输入数字:”); ..
发布时间:2020-10-14 20:31:31 其他开发

D语言中的结构和类之间的用法首选项

何时应该将类型定义为结构或类? 我知道结构是值类型,而类是引用类型。因此,例如,我想知道是否应该将堆栈定义为结构或类? 解决方案 原因#1 选择struct vs class:类具有继承,而结构则没有。如果需要多态性,则必须使用类。 原因2:结构通常是值类型(尽管可以将它们设为引用类型)您可以工作)。类始终是引用类型。因此,如果要使用值类型,请选择一个结构。如果要使用引用类型, ..
发布时间:2020-10-14 20:30:28 其他开发

'const ref'和'in'之间的区别?

我想了解 const ref 和 in 之间的区别,特别是在性能方面。 我知道中的等效于 const scope ,但是 scope存储类意味着什么不能对参数中的引用进行转义(例如,分配给全局变量)。表示?欢迎使用示例代码。 如何确定 const ref 和在中实现功能?我知道使用 ref 不会复制对象,因为它是一个引用,但是对于 in 也是一样吗? 解决方案 1)作用域参数存 ..
发布时间:2020-10-14 20:30:24 其他开发