d相关内容

D:查找具有特定属性的所有功能

当前是否可以对模块中具有某些属性的所有函数(或类)进行扫描/查询/迭代? 例如: 源/程序包A / something.d: @sillyWalk(10) void doSomething() { } 来源/程序包B / anotherThing.d: @sillyWalk(50) void anotherThing() { } ..
发布时间:2020-10-14 20:30:22 其他开发

为D中的const和非const结构提供@property

我以此方式定义了一个简单的结构: struct Person { 私有字符串_name; @property ref string name(){return _name; } } @属性注释确实很酷,但是我不知道如何正确使用它。 上面的代码还可以,但是我不能通过人员到需要的功能,例如: void fun(in person p){... ..
发布时间:2020-10-08 06:56:21 其他开发

D中的const和不可变之间有什么区别?

D中 const 和不可变类型限定词有什么区别? 解决方案 const 之类的内容无法通过该引用进行更改,但可以通过对以下内容的可变引用进行更改相同的数据。 不可变不能通过对该数据的任何引用进行突变。因此,如果您有 const C c = foo(); 然后,您知道您无法对 c所引用的对象进行突变到 c ,但是在代码中可能还存在对 c 所引用对象的其他引用,如果它 ..
发布时间:2020-10-08 06:04:22 其他开发

非阻塞并发消息接收

是否有一个标准功能来接收并发消息,但无阻塞?似乎 std.concurrency 中可用的所有功能都处于阻塞状态,而我发现与非阻塞状态最接近的功能是 receiveTimeout ,但是它仍然等待直到超时。如果没有消息传递给线程,我希望它立即返回。 这是我使用 receiveTimeout 。 模块main; 导入标准并发; import std.stdio:writefln ..
发布时间:2020-10-07 21:18:44 其他开发

D中是否存在与C ++等效的Future / Promise?

D世界中是否存在C ++世界中的未来/承诺? 当然有 std.parallelism ,但是它不完全具有promise / future组合的功能(没有等同于获得未来或设置结果或异常,您也不能等待完成。) 解决方案 我相信您没有认真研究 std.parallelism ...相当于“获取未来”(如果您是说 std :: future 的get()方法)是yieldForce(),sp ..
发布时间:2020-10-07 20:44:49 其他开发

D内联汇编器:函数调用出错

我遇到了一个非常特殊的问题. 对于VM,我需要将代码从指令函数复制到ubyte数组,然后执行该数组(该技术类似于gcc中的内联宏vm),基本上它的工作原理如下: __gshared void * sp = null, sb = null; //stack pointer and stack base __gshared void add() //the function is just t ..
发布时间:2020-09-13 01:04:20 其他开发

D:如何从存档中提取数据?

我有非常简单的代码,应该从存档中提取数据: import std.stdio; import std.string; import std.file; import std.algorithm; import std.zip; void main() { string ar = `D:\ftp\s2-imfset_2015\IFPET-150101.zip`; auto z ..
发布时间:2020-09-06 20:24:33 其他开发

ANTLR中的浮点文字和范围参数

我正在使用语言D的解析器,尝试添加“切片"运算符规则时遇到麻烦.您可以在 解决方案 当在浮动规则中遇到".."时,可以通过发出两个令牌(Int和Range令牌)来做到这一点.您需要在词法分析器中重写两个方法才能实现这一点. 一个演示,该演示只包含Dee语法的一小部分: grammar Dee; @lexer::members { java.util.Queue ..
发布时间:2020-09-02 22:49:18 其他开发

在OS X上初始化D运行时

编辑:这似乎是一个长期存在的问题,没有迫在眉睫的解决方案: http://d.puremagic.com/issues/show_bug.cgi?id=8133 http://www.digitalmars.com/d/archives/digitalmars/D/Ideas_for_runtime_loading_of_shared_libraries._154126.html http://l ..
发布时间:2020-08-10 19:08:21 其他开发

探戈未来与D1停产

知道D1 will be discontinued effective December 31, 2012,考虑到官方发行版在D1下,继续使用Tango仍然值得吗? 解决方案 如果您要谈论的是,一旦对D1的官方支持消失了,继续使用Tango与D1是否值得?作为继续使用D1是否值得.缺少D1对dmd的支持确实不会对D1的Tango是否仍然可用产生任何影响.真正的问题是,尽管缺乏支持,您是否仍 ..
发布时间:2020-08-10 18:57:19 其他开发

Gtk/GtkD是否检测到窗口调整大小时释放了鼠标按钮?

我正在尝试改进用GtkD(Gtk的D绑定)编写的绘图库.包含许多点的散点图需要很长时间才能调整大小.我想在用户拖动窗口边缘以调整大小时重新缩放图像,以允许像素化,并且仅在释放鼠标按钮时才重新渲染它. 在调整窗口大小时,是否有API可以检测用户是否仍按住鼠标按钮拖动窗口边缘?如果您不熟悉GtkD,则仍然希望使用C Gtk API进行响应. 解决方案 您可以在重绘中添加500毫秒的超时时 ..
发布时间:2020-07-31 02:03:04 其他开发

为什么要编译GtkD(D语言的Gtk +绑定)?

我最近一直在使用带有D编程语言的GtkD来创建本机应用程序.我已经下载了所有必需的文件,并运行了所有文件,因此我现在可以编译并生成示例应用程序. 我的问题是,在某些指南中,它告诉您在使用的平台上编译GtkD,但这有什么意义呢?编译后,最终在Windows上只有一个lib文件(GtkD.lib),在Linux上只有3个lib文件(以* .a结尾).这些文件是做什么用的,如何使用?就像我说的那样 ..
发布时间:2020-07-31 02:02:02 其他开发

在Ubuntu 10.04上设置可用的D2.x工具链(使用gtkd)

我已经和D玩了几天,对此感到非常兴奋,直到我试图让gtkd正常工作为止.我现在已经浪费了三天的大部分时间来尝试进行有效的设置,并且开始变得(很早以前就读过)有些士气低落.我想知道在我放弃之前是否有人可以提供帮助.我在网上可以找到很多信息,这些信息已经过时了,所以我不确定我是否认为这是可能的. 其余内容与我到目前为止已经尝试过的一样,如果您有快速的解决方案,则可能不需要阅读,请随时跳转至... ..
发布时间:2020-07-31 02:01:58 其他开发

如何将关联数组转换为key:value?

我需要转换关联数组,以将其放入Json,但我不能理解如何做到这一点.方法to!string添加不必要的斜杠. int[string] name; name["Python"] = 5; Json tags = Json.emptyObject; //Json object tags["tags"] = name.to!string; writeln(tags); {"tags":"[\" ..
发布时间:2020-07-26 05:33:52 其他开发

这个纯函数如何能够修改非私有状态?

TDPL,第2页. 167: ,只要函数中的可变状态完全是暂时的(即分配在堆栈上)和 private (即没有通过引用传递给那些可能会污染它),那么该功能可以被认为是纯函数. import std.stdio : writeln; struct M{ int[4] _data; pure ref int opIndex(size_t i){ return _data[i]; ..
发布时间:2020-07-24 23:28:57 其他开发

是否可以使用Apple Events与C或D中的应用程序进行通信?

我希望通过Apple Events通过 D 应用程序(可以与C互操作)与其他应用程序进行交互.系统,而无需嵌入AppleScript,JSX等.关于从非AppleScript应用程序发送Apple事件的文档很少,而且我找不到从C应用程序实现此目的的任何信息,更不用说D应用程序了.有可能,如果可以,怎么办? 解决方案 不幸的是,该API是Carbon的一部分,自OS X 10.8起,它显然不 ..
发布时间:2020-07-17 18:53:50 其他开发

如何安装两个版本的Qt并告诉应用程序使用哪个版本?

我正在使用Qt开发一个应用程序,但是使用D语言(具有QtD绑定).我注意到我的应用程序因Qt 4.7.x崩溃,因此我需要改用Qt 4.6.2.但是,在我的系统中安装了Qt 4.7.2.不幸的是,我既没有使QtD与最新的Qt版本一起工作,也没有(恐怕)指望QtD开发人员... 我唯一需要做的就是将我的应用程序安装在系统Qt 4.6.2库中并使用它,但让所有其他应用程序仍然使用Qt 4.7.2. ..
发布时间:2020-07-13 20:39:23 其他开发

D退出声明

D是否具有退出语句,类似于java,python,c/c ++中的语句.哪一个(令人震惊的)退出程序执行?类似于exit(); 解决方案 如果要exit,请使用C的exit函数. import core.stdc.stdlib; void main() { exit(-1); } 我不太确定那会如何影响D运行时,什么都不会.可能是东西没有像您通常想要的那样被清理干净,或 ..
发布时间:2020-07-05 03:56:35 其他开发