d2

    6热度

    1回答

    在d共享库调用writefln我试图与d动态共享库到快速开始,但我有一个问题。 我建立以下代码dmd -shared ./testlib.d: module testlib; import std.c.stdio; extern (C) export int hello(int a) { printf("Number is %d", a); return (a + 1

    5热度

    1回答

    是否可以防止在D2中非传递变量的重新分配? 例如: final int[] a = [0]; a[0] = 1; // OK. a = []; // ERROR. 我只看到const和immutable这里: http://www.dlang.org/const3.html

    4热度

    1回答

    import std.stdio; struct S { string m_str = "defaultString"; this(this) { writeln("In this(this)"); } ~this() { writeln("In ~this():"~m_str); } }

    0热度

    1回答

    我需要生成一个临时文件,填充一些数据并将其提供给外部程序。基于d的描述可here我使用​​方法: auto f = File.tmpfile(); writeln(f.name()); 不提供一种方式来获得所生成的文件名。据记载,name可能是空的。在Python中,我会这样做: (o_fd, o_filename) = tempfile.mkstemp('.my.own.suffix')

    5热度

    2回答

    我有一个函数void foo(...)和一个函数void bar(...),我想从foo调用bar,bar接收与foo相同的变量参数列表。 D中可能吗? 谢谢!

    11热度

    1回答

    我想进入与D编程,我遇到了一些问题。我开始使用core.thread Thread类,它为启动一个线程提供支持,然后将当前线程加入它。 D似乎希望人们使用消息传递,而不是锁定/同步方法,所以我想我会试一试,但是我看到的每个消息传递示例都需要我无法从Thread类获得的tid。我在网上看到的代码示例实际上使用了spawn,它返回的是tid而不是使用Thread wrapper,然后使用tid将消息传

    2热度

    1回答

    我有一个类的成员函数与packageprotection attribute,我想覆盖它在一个子类,在同一个包,不同的模块。 dmd编译器大声说我不能覆盖非虚函数。如果我使功能public,它实际上工作。 为什么包函数不是虚拟的? 示例代码: module test.A; class A { package void doSomething() {} } module test.

    10热度

    1回答

    我疯了,因为我无法在屏幕上出现一组简单的三角形。 我正在使用OpenGL3(没有弃用的固定管道)使用D编程语言的废弃绑定。 你能在下面的程序中发现错误吗?它编译得很好,不会抛出任何OpenGL/GLSL错误。它只是显示我设置的清晰颜色的空白屏幕。 import std.string; import std.conv; import derelict.opengl3.gl3; import d

    7热度

    3回答

    我知道有DSSS,BUD/build,Orbit雅各布卡尔堡和官方rdmd。而且只有Orbit似乎很活跃。 那么,哪些最适合构建具有很多依赖关系的庞大复杂的D程序? 不需要包装,只需要很好和清楚的构建过程帮手。

    3热度

    2回答

    只是收到一条错误消息,说“union __anonymous只能是聚合的一部分”。我并不是很困惑,因为我正在尝试一些我知道不应该工作的东西。 但它让我想知道D中“聚合”的确切定义是什么。我猜测它是一种可以包含其他类型的类型,如数组,结构或类。还是有更多的呢?