d2

    5熱度

    1回答

    我想這 struct Foo(T) { align(8) void[T.sizeof] data; } 但 static assert(Foo!(int).data.alignof == 8); 失敗,告訴我對齊的8仍然1代替。 爲什麼是這樣的,我該如何解決這個問題,以便它適用於2(不僅僅是8)冪的任意對齊。

    8熱度

    4回答

    我將這個特性集成到了我喜歡的語言OCaml中,我知道這是D中的性能特徵,但除了一些優化之外,編譯時評估的用例是什麼? 越越好,geeker更好:-)

    3熱度

    3回答

    我正在研究一種情況,我希望有一個基類,它定義了一個靜態關聯數組和靜態函數,然後在它繼承的類中複製這個功能,但是與每個孩子類擁有自己的數組實例。看起來像子類只是繼承了父類的數組,而不是像我期望的那樣創建自己的靜態副本。下面是什麼我所希望實現超簡化的簡化版: class MyBase { static string[string] dict; static void attach(

    1熱度

    1回答

    配置: 操作系統:Windows 7(32位) DMD 2.58使用福波斯標準庫 我的意圖: 我開始移植一箇舊的包(10模塊es)在2007年寫了回來。它提供了一個完整的unicode支持,我想保留這個功能。 它的作者爲此寫了一個特定的模塊(class UnicodeBom(T)):一個非常複雜的方法(至少對我來說,考慮到我只是一個熱情的初學者,只有一些C++/Qt/C#入門經驗) ! 我清除了所

    5熱度

    3回答

    當我使用「in」契約覆蓋D中的函數時,將檢查繼承的「in」契約。如果它們失敗,則檢查重寫的「in」合同。如果我沒有在合同中指定任何內容,那麼它就會被解釋爲有一個空的「in」合同。所以下面的代碼編譯併成功運行。 module main; import std.stdio; interface I { void write(int i) in { as

    7熱度

    1回答

    是否可以編寫單個模板函數來遞增不同結構的(數字)字段?例如: struct Color { ubyte a,r,g,b; } struct Point { double x, y; } 我想是這樣的: T update(T, A)(T t, A a) if (is(T == struct)) { auto vals = t.tupleof;

    10熱度

    2回答

    什麼是最好的方式懶散concatenate在D範圍的範圍?

    1熱度

    1回答

    在C++中,可以使用istream& operator>>讀取「在文本中」的數據。 D中的等價物是什麼? 我嘗試: input.txt中 c 1033 90.432 input_test.d import std.stdio; import std.stream; void main() { auto inputFile = new BufferedFile("input.

    6熱度

    2回答

    我正嘗試在D(語言版本2)中使用基本模塊導入。作爲指南,我在dlang.org上使用了示例,但我的簡單程序不能編譯。這些文件位於相同的目錄中。 這裏是我的main.d文件的內容: import std.stdio; import mymodule; void main(string[] args){ sayHello(); writeln("Executing Main"

    4熱度

    2回答

    我正在玩gtkd包裝生成器,並運行到一個std.conv異常,我無法設法得到任何符號調試信息。我編譯與調試符號: $ dmd -gc -debug utils/HTODConvert.d utils/WrapperIF.d utils/funct.d utils/DefReader.d utils/GtkWrapper.d utils/HtmlStrip.d utils/IndentedStrin