d相关内容
我正在尝试使用MinGW的MSY在Windows 7上compile GDC (v2)。 当我执行此步骤时: $ ../configure --enable-languages=d --disable-shared --disable-bootstrap 我得到: checking build system type... i686-pc-mingw32 checking h
..
如果我尝试使用std.algm.ill(Range1,Range2)(Range1 Range,Range2 Fill),我总是收到找不到模板匹配的错误消息。看起来编译器正在尝试与Fill(范围、值)匹配,而不是另一个。 auto test = new char[256]; fill(test, "abc".dup); 不能使用Fill填充字符数组吗? 错误 Test.d(1
..
最近几天我一直在热衷于学习D语言。作为数百万行C++代码的支持者,这看起来像是我的梦想。我们支持高性能低延迟系统,很明显,在过去十年中,C++是唯一的选择。现在,我看到D了。 所以,我的问题很明显。我可以开始考虑将商业软件产品迁移到D语言了吗?有没有这样的迁移或现有的大型商业软件产品从头开始写在D上的例子? 现在投资这种语言安全吗?我们有生产质量的编译器和调试器吗?我们可以假定它们将得
..
对于所有熟悉 D 编程语言的人,如何在嵌入式中使用它实时环境?我知道它的原始设计并非针对实时嵌入式环境,但这个问题更多的是关于如何实现实时功能. 该语言的哪些结构是必不可少的? 您认为哪些构造会成为问题? 有人在嵌入式系统中成功使用过吗? 任何其他想法或建议都会很棒. 解决方案 D 并不是真正的用于实时应用程序,主要是因为 D 的某些语言特性依赖于它的垃圾收集器,而
..
这是一个 C++/D 交叉问题.D 编程语言 有 范围 - 与 C++ 库如 Boost.Range- 不基于迭代器对.官方的 C++ Ranges Study Group 似乎陷入了制定技术规范的困境. 问题:当前的 C++11 或即将推出的 C++14 标准是否存在阻碍采用 D 范围的任何障碍 - 以及
..
D中的const和immutable类型限定符有什么区别? 解决方案 const 不能通过该引用进行变异,但可以通过对相同数据的可变引用进行变异.immutable 不能通过 any 对该数据的引用来改变.所以,如果你有 const C c = foo(); 那么你就知道不能通过c改变c所引用的对象,但是c所引用的对象的其他引用可能存在于你的代码中,如果它们是可变的,它们可以改变它,从
..
我有一个标准的 char 指针,我试图将其转换为字符串. //字符串转char*char *x = cast(char*)("Hello World\0");//char* 转成字符串?字符串 x = 演员(字符串)x;字符串 x = cast(不可变(char)[])x; 错误! 任何想法如何将 char* 转换为 D 中的字符串? 解决方案 使用std.conv.to将cha
..
OpenGL 或 SDL 在到达类中的第一个语句时会出现段错误.我不知道是什么原因造成的. 类渲染引擎 {GLuint vertexArrayId;GLfloat[] vertexBufferData = [-1.0f,-1.0f,0.0f,1.0f,-1.0f,0.0f,0.0f, 1.0f, 0.0f];GLuint vertexBufferId;公开这个(){glGenVertexArra
..
如何从头开始创建/编写一个简单的 XML 解析器? 除了代码示例,我想知道英文中简化的基本步骤是什么. 一个好的解析器是如何设计的?我知道正则表达式不应该在解析器中使用,但是正则表达式在解析 XML 中的作用有多大? 推荐使用什么数据结构?我应该使用链表来存储和检索节点、属性和值吗? 我想学习如何创建一个 XML 解析器,以便我可以用 D 编程语言编写一个. 解决方案
..
我一直听到人们谈论不可空引用类型如何解决如此多的错误并使编程变得如此简单.甚至 null 的创建者也称其为他的十亿美元的错误,以及Spec# 引入了不可为空的类型来解决这个问题. 编辑:请忽略我对 Spec# 的评论.我误解了它的工作原理. EDIT 2:我一定是在和错误的人说话,我真的希望有人与之争论:-) 所以我猜,作为少数,我错了,但我不明白为什么这场辩论有任何价值.我认为
..
我喜欢我读到的关于 D 的很多内容. 统一文档(那将让我的工作更轻松.) 内置测试功能语言. 语言中的调试代码支持. 前向声明.(我总是认为声明是愚蠢的两次相同的功能.) 内置功能可替代预处理器. 模块 Typedef 用于正确的类型检查而不是别名. 嵌套函数.(咳嗽 PASCAL咳嗽) 输入和输出参数.(这是多么明显!) 支持低级编程 -嵌入式系统,噢耶! 然而:
..
在 10 年,甚至 5 年内,将没有 [Edit2: 服务器或台式机] 32 位 CPU. 那么,使用 int(32 位)比 long(64 位)有什么优势? 使用 int 有什么缺点吗? 编辑: 通过 10 或 5 年我的意思是在绝大多数使用这些语言的地方 我的意思是默认使用哪种类型.这几天我什至不会考虑是否应该使用 short 作为循环计数器,只需 for(int i
..
我喜欢我读到的关于 D 的很多内容. 统一文档(那将让我的工作更轻松.) 内置测试功能语言. 语言中的调试代码支持. 前向声明.(我总是认为声明是愚蠢的两次相同的功能.) 内置功能可替代预处理器. 模块 Typedef 用于正确的类型检查而不是别名. 嵌套函数.(咳嗽 PASCAL咳嗽) 输入和输出参数.(这是多么明显!) 支持低级编程 -嵌入式系统,噢耶! 然而:
..
我正在尝试理解 D 语言运行时中的一些代码.似乎以下两件事有单独的功能: array1[] += 标量 * array2[];数组1[] += 数组2[] * 标量; 为什么不能用一个函数来完成这些?我认为即使在不精确的浮点运算中,乘法也是可交换的. 解决方案 我对 D 语言一无所知,但我很乐意回答你标题中的问题: 在不精确的浮点运算中,乘法总是可交换的吗? 直到 NaN
..
我有非常简单的代码可以从存档中提取数据: import std.stdio;导入标准字符串;导入标准文件;导入标准算法;导入 std.zip;无效主(){字符串 ar = `D:\ftp\s2-imfset_2015\IFPET-150101.zip`;auto zip = new ZipArchive(ar.read);foreach(ArchiveMember am; zip.directo
..
我希望通过 Apple Events 与 D 应用程序(可以与 C 互操作)中的其他应用程序进行交互没有嵌入 AppleScript、JSX 等的系统.关于从非 AppleScript 应用程序发送 Apple Events 的主题的文档很少,我找不到任何关于从 C 应用程序实现这一点的信息,更不用说 D 应用程序了.有可能吗,如果有,怎么做? 解决方案 这是这些事件的 C API 的文档
..
我希望通过 Apple Events 与 D 应用程序(可以与 C 互操作)中的其他应用程序进行交互没有嵌入 AppleScript、JSX 等的系统.关于从非 AppleScript 应用程序发送 Apple Events 的主题的文档很少,我找不到任何关于从 C 应用程序实现这一点的信息,更不用说 D 应用程序了.有可能吗,如果有,怎么做? 解决方案 这是这些事件的 C API 的文档
..
我正在开发语言 D 的解析器,当我尝试添加“切片"运算符规则时遇到了麻烦.你可以找到它的 ANTLR 语法 此处.基本上问题在于,如果词法分析器遇到这样的字符串:“1..2",它会完全丢失,最终成为单个浮点值,因此是像“a[10..2"这样的字符串的 postfixExpression 规则.11]" 最终成为带有 ExpLiteralReal 参数的 ExpArrIndex 对象.有人可以解释数
..
我想做一个简单的在线编译器,从浏览器获取代码,将其发送到服务器,进行编译,然后返回浏览器执行的结果. 恐怕有人会从代码或类似的代码中执行 format C:\ .有什么办法可以防止呢? P.S.我正在寻找Windows解决方案. 解决方案 您将需要使用多层操作系统功能.以具有受限访问权限的受限用户身份,在受防火墙保护的虚拟机中运行编译器和生成的程序. 如果一切顺利,VM中
..
我用C语言编写了该程序,还用用不同的方式写 步骤很简单.伪代码: 不是文件结尾:X =从文件中读取ulong并秘密转换为little endianY =从文件中读取X个字节到ubyte数组中从Y中的每个字节中减去1将Y保存为ogg文件 我的D次尝试: 导入std.file,std.stdio,std.bitmanip,std.conv,core.stdc.stdio:fread;vo
..