问题标签 [phobos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
d - 从 D 中的网页读取数据?
如何简单地打开一个 url 并使用 D 从网页中读取数据?(如果需要使用标准的 lib 功能,我更喜欢 phobos 而不是 tango)
d - 在writefln()之外连接D中字符串的最短方法?
我反复需要连接格式字符串,并且想知道在 D 中连接 writefln() 函数之外的字符串的最短(或最容易阅读)方法是什么?
也就是说,我喜欢 writefln 的行为,例如:
...但我想这样做而不把它写在标准输出上。有没有同样简单的方法?
我发现的唯一想法是 std.string 中的格式函数,但这需要您提供预定义长度的字符串缓冲区作为第一个参数,这在大多数情况下很不方便。
我发现的另一种选择是(通过在 std.array 中使用“join”):
...这很方便,但当然只有在您使用相同的“分隔符”时才有效。
任何更通用的方法来做到这一点,比上面的例子更短,并且不需要提供预定义长度的缓冲区字符串?
d - std.regex.regex() 不纯。为什么?
在 D 中 std.regex.regex() 不是纯的:
为什么?
是吗
A. 没有足够的pure
关键字被投入。
或者
B. 有更深层次的原因
d - Object.Error:打印 std.algorithm.cartesianProduct 的结果时发生访问冲突
我正在为 x86 使用 DMD 2.062。
该程序打印出:
然后抛出访问冲突错误。我是否错误地使用了笛卡尔产品,或者这是函数中的错误?
d - 有效的 D : 最佳实践和设计模式
关于D-Specific Design Patterns举行了一个非常有趣的会议,在 D 社区中,一些人认为这可能是一本讨论有效编码技术的书的起点。其他人认为现在还为时过早,因为没有多少人有很多经验,这样一本书的作者会对有效性的概念有一些偏见/个人的欣赏。SO 是一种更具交互性的媒体(有其局限性)。因此,等待“Effective D”的出现,如果我们能分享一些(致命的)建议/技术/模式以使 D 代码看起来更好,那就太好了。我认为如果答案会更清楚:
- 暴露一种独特的技术
- 本质上是一段注释代码
- (如果太大)只是代码的链接(公共要点...)
d - 如何检测函数是否使用 @property 注释
是否可以使用 D 的内置特征和/或 std.traits 来检测函数(在类/结构内或没有)是否用 @property 注释?我知道@property 并不是一个真正的属性,但我认为__traits(getAttributes, ...)
可能会这样做(没有这样的运气)。
c++ - 相当于 D 中的 remove_if
最近我对 D 编程语言产生了兴趣。我刚开始学习它,并且来自 C++ 背景。我想知道是否有 std::remove_if 的等价物。我只看到删除查看 dlang 网站上的文档。
如果没有直接的等价物,那么在 D 中获得相同结果的正确或最惯用的方法是什么?
编辑:我应该补充一点,我正在考虑擦除删除
c++ - D 中序列化 API 的思考
在开发一种缓存类型、统计信息等关于文件和目录的新型搜索引擎的道路上,我目前正在尝试使用以下方法实现内部目录树的持久缓存msgpack-d
:
为什么不msgpack-d
,而且,从我也可以看到,std.serialization
(橙色)支持通过像 Boost.Serialization 那样的一个通用模板(成员)函数重载来实现打包和解包?例如容器可以使用这个简洁优雅的模板成员函数进行序列化
这将代码大小减半,并消除了使pack
和unpack
不同步的风险。我是否错过了使用这种方法的任何重大缺点,或者这种方法没有被优先考虑?
segmentation-fault - D 中的段错误,因为输入太大
以下 D 程序会因输入 939971 或更高版本而崩溃,但不会因输入 939970 或更低版本而崩溃:
堆栈跟踪:
对我来说,这看起来像是 Phobos 中的一个错误——我说得对吗?