如何在 Vibe.D 中循环访问 JSON 数组



使用 Vibe.D 库迭代 Json 数组的正确方法是什么?

我已经尝试过这个,但它给了我编译错误:

foreach(string index, Json value; configuration["array1"]) {}

这是错误:

Error: opApply() function for Json must return an int

完整代码:

foreach(int index, Json pluginToLoad; configuration["PluginsToLoad"]) {
    import std.conv;
    logInfo(to!string(index));
    logInfo(pluginToLoad.get!string);
    logInfo("---");
}

在你的代码中,index必须是整数类型 - 这几乎就是错误消息所说的。JSON 数组始终是纯数组,关联的数组称为 JSON 对象。

例:

foreach (size_t index, Json value; configuration["array1"]) {}

或者干脆

foreach (index, value; configuration["array1"]) {} // type inference

更新:将int更改为size_t以匹配实际操作应用签名

出于某种原因,使用乌龙有效。我猜这是一个错误?

foreach(ulong index, Json pluginToLoad; configuration["PluginsToLoad"])

相关内容

  • 没有找到相关文章

最新更新