将一个函数中的可变参数传递给 D 中的另一个函数

2024-01-16

我有一个可变的 D 风格函数foo(format, ...),这是一个包装器writefln。我想做这样的事情:

foo(format, <...>) {
    //...
    writefln(format, ...);
}

本质上,将省略号参数传递给 writefln。我知道这在 C/C++ 中并不容易/不可能,但是有没有办法在 D 中实现这一点?


这将为您做到:

import std.stdio;
void customWrite(Args...)(string format, Args args)
{
    writefln(format, args);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将一个函数中的可变参数传递给 D 中的另一个函数 的相关文章

  • varargs 何时开始与 no-arg 不冲突?

    今天我发现以下代码编译并运行时没有任何警告 public class Try MultipleArguments2 public static void main String args myfunction myfunction 1 2
  • 最后命名的参数不是函数或数组?

    这个问题是关于 vararg 函数 以及省略号之前的最后一个命名参数 void f Type paramN va list ap va start ap paramN va end ap 我在阅读 C 标准时 发现了以下限制va start
  • 如果 main 为 void,D 如何在成功时返回 0,在失败时返回非零?

    在 D 中 main函数定义为 void main perhaps some args but I do not remember 我确信这个函数在成功时返回零 在失败时返回非零 但它被定义为不返回任何内容 其背后的逻辑是什么 Alexan
  • 如何使用valist从C调用java vararg方法

    我有带有可变参数的 C 方法 void message int id 它应该使用 vararg 调用 Java 静态方法 public static void message String messageName String args 我
  • PHP 中的可变参数函数和类型提示

    快速一 有没有办法在 PHP 中强制执行可变参数函数的类型 我假设没有 但也许我错过了一些东西 到目前为止 我只是强制使用所需类型的单个必需参数 然后迭代检查其余参数 public function myFunction MyClass o
  • 泛型类型的签名约束

    struct S int a int b void fun T T t I want fun跟 共事S仅有的 签名约束是什么样的 我做不到fun的成员S 与void fun T T t if is T S I get Error struc
  • std.regex.regex 的返回值?

    我正在尝试编写一个函数 它接受一个输入字符串 一个正则表达式 由std regex regex来自原始字符串 和错误消息字符串 并尝试使用正则表达式匹配输入字符串中的某些内容 如果没有匹配则显示错误消息 到目前为止我想出了以下签名 stri
  • 将 SQLite 与 DMD 静态链接 (Windows x86)

    我尝试与 sqlite3 静态链接但没有成功 我正在使用 etc c sqlite3 标头和 sqlite3 合并 为了创建 lib 文件 我尝试了 VC 和 MinGW gcc 它们都成功编译了源文件 但它们都生成 COFF 对象格式 D
  • D 中的模板参数推理

    我正在编写一些对静态 D 数组进行操作的向量函数 如下所示 real N unit uint N real N v real N u v norm v explicit type necessary to force slice opera
  • 函数参数列表中的三个点是什么意思?

    我遇到了这样的函数定义 char abc char f 三个点是什么意思 这些类型的函数称为可变参数函数 维基百科链接 https en wikipedia org wiki Variadic function 他们使用省略号 即三个点 来
  • C/C++ va_list 未正确返回参数

    我在使用 va list 时遇到问题 下面的代码适用于 int main int f1 1 float m function n f1 float function int n va list mem list va start mem l
  • 复制构造函数中的省略号有何含义?

    考虑以下程序 include
  • D 的写法是什么?

    我用 C 写了这个程序 http pastebay com 182597并且在二郎中 http pastebay com 185244 为了练习 我尝试用 D 重写 一个朋友也用 D 写了它 但是写得不同 https stackoverfl
  • 具有可变参数数量的 OCaml 函数

    我正在探索 OCaml 函数的 高级 用法 我想知道如何编写具有可变数量参数的函数 例如 像这样的函数 let sum x1 x2 x3 xn x1 x2 x3 xn 通过一些类型黑客 当然 let sum f f 0 let arg x
  • mpi.h:使用未定义的类型?

    我正在尝试将 OpenMPI 的 mpi h 的重要部分翻译为 D 编程语言 以便我可以从 D 调用它 HTOD 根本不起作用 我无法理解以下代码段 typedef struct ompi communicator t MPI Comm O
  • 在 GTK+ (gtkD) 中处理按键

    我正在玩gtkD http www dsource org projects gtkd GTK 的 D 绑定 我有一个window对象 实例gtk MainWindow 我想处理它的按键 How 如何处理特殊键 例如箭头键 pgup pgd
  • 确定 Objective-C 方法在运行时是否是可变的

    有没有办法在运行时找出给定方法是否是可变参数类型 就像是method getTypeEncoding 这不会告诉我一个方法是否接受可变数量的参数 或者有什么技巧可以告诉我们吗 罗伯特的评论是正确的 考虑 interface Boogity
  • 在这种情况下,我如何处理 Function 和省略号/可变参数?

    我的项目之一是抛出 lambda 表达式 https github com fge throwing lambdas 我的目标是简化潜在的使用 FunctionalInterfaces in Streams 其在流中使用的唯一 缺陷 是它们
  • D 并发写入缓冲区

    假设您有一个大小为 N 的缓冲区 必须将其设置为确定的值 例如零或其他值 缓冲区中的此值设置分为 M 个线程 每个线程处理缓冲区的 N M 个元素 缓冲区不能immutable 因为我们改变了值 消息传递也不起作用 因为禁止传递 ref 或
  • 如何在 PHP 中通过 array_map(...) 使用数组的数组? [复制]

    这个问题在这里已经有答案了 PHP 函数array map http php net manual en function array map php期望回调作为第一个参数 或null for 创建数组的数组 http php net ma

随机推荐

  • 现代 Windows 上的“seek”可靠吗?

    From 手册页 http www inside r org r doc base seek for seek in R 不鼓励在Windows 上使用seek 我们发现了很多错误 建议用户执行文件定位的 Windows 实现 使用它只需要
  • 如何避免时差为负时间?

    我正在开发一个使用 Java8 Time 的应用程序 我面临一个问题 假设时间 A 是 08 00 时间 B 是 17 00 那么这两个时间之间的差异将是 9 小时 在我的情况下这是正确的 但如果时间 A 是 18 00 时间 B 是 02
  • 使用绝对时区的Javascript倒计时?

    我有一个 javascript 倒计时器 它通过获取指定的日期和时间并将其与当前日期和时间进行比较来工作 问题是 当前时间是相对于用户时区的 因此用户之间的剩余时间是不同的 如何让计时器倒计时到特定时区的某个时间 在我的例子中为 GMT 5
  • Java 的 MessageFormat 未本地化小写日期中的葡萄牙月份

    月份名称以大写字母而不是小写字母开头 正如他们应该的那样 https meta wikimedia org wiki Capitalization of Wiktionary pages Capitalization of month na
  • 关系的时间复杂度 T(n) = T(n-1) + T(n/2) + n

    对于关系 T n T n 1 T n 2 n 我可以先解出项 T n 1 n 它给出 O n 2 然后解出项 T n 2 O n 2 吗 根据主定理 它也给出了 O n 2 或者它是错误的 不 你不能用主定理来解决它 你需要使用来解决它阿克
  • 创建一个对象,其类型在字符串参数中

    我有一个 TreeView 其中包含节点 当用户单击某个节点时 应创建并显示相应的 CrystalReport 文档 例如 我的节点名称是 PeriodReport1 PeriodReport2 PeriodReport3 我的 Cryst
  • 无法找到并单击条件条款按钮

    我是 pupeeteer 的新手 首先我要做的是加载页面并单击按钮 但是 它无法找到该元素 我认为这是因为我需要找到父元素或父元素的父元素
  • Asp.net Mvc 4 和 Web Api 中的路由

    我可以同时使用以下两个路由规则吗 config Routes MapHttpRoute name ActionApi routeTemplate api controller action id defaults new id RouteP
  • IE11 中奇怪的 @font-face 问题(仅在您检查开发人员工具中的元素后才呈现)

    我有一些网络字体可以在除 IE11 之外的所有浏览器中正常工作 奇怪的是 如果你进入这个页面 然后使用 IE11 开发人员工具检查 功能 要点 突然所有字体都可以工作了 有任何想法吗 font face font family Helvet
  • POSIX“tee”命令如何工作?

    tee newOutputFile lt existingInputFile gt newOutputFile2 究竟会怎样tee接受论点 会是这样吗 Tee将首先处理newOutputFile lt existingInputFile所以
  • CSS3连续旋转动画(就像加载日晷)

    我正在尝试使用 PNG 和 CSS3 动画来复制 Apple 风格的活动指示器 日晷加载图标 我让图像旋转并连续进行 但动画完成后在进行下一次旋转之前似乎有延迟 webkit keyframes rotate from webkit tra
  • JfreeChart 中的自动缩放 Y 轴

    我在用JFreeChart在我的 Java 应用程序中创建蜡烛图 然而 我的图表最终看起来像这样 http imageshack us photo my images 69 capturebhx png http imageshack us
  • 出现分段错误

    我看到很多关于出现分段错误在SO中的C程序中 我认为参考这里的内容会很棒 这是一个涉及某些导致分段错误的情况的问题 我的答案发布在下面 正如一些答案中所写 所有情况下的行为都是未定义的 尽管很多人都将他们视为分段故障 所以这个问题是关于是什
  • 如何有条件地使用“平面图”运算符? (角度2/rxjs)

    我想要实现的是有条件地运行一系列可观察的结果 return observable map response gt response flatmap response1 gt observable1 response1 flatmap res
  • 找不到符号 if 语句错误

    我一直在编写一个小程序来娱乐 但我收到了这个错误 Compilation error time 0 11 memory 380672 signal 0Main java 22 error cannot find symbol string
  • 从列表中选择 5 个不同的元素?

    从 python 列表中选择 5 个不同元素并将它们添加到新列表中的最佳方法是什么 谢谢您的帮助 假设您希望随机选择它们并且new list已经定义了 import random new list random sample old lis
  • 如何实现隐式方法的中间类型?

    假设我想提供方法foo在现有类型上A在我的控制之外 据我所知 在 Scala 中执行此操作的规范方法是实现从A到某种实现的类型foo 现在我基本上看到两个选择 为此目的定义一个单独的 甚至可能是隐藏的类 protected class Fo
  • 当用户拒绝地理定位服务时,我会收到拒绝事件吗?

    我的意思是 如果我在网页上有一个按钮 当用户单击该按钮时 然后就可以获取用户的地理位置信息 但在此之前 浏览器会询问用户是否接受使用地理定位服务 如果用户拒绝地理定位服务 我可以获得拒绝事件吗 Yes Example navigator g
  • 如何通过nodejs实现APNS通知?

    现在有人有一个很好的 npm 模块来实现 Apple PUSH 通知吗 一个简单的例子就很好了 我找到的解决方案如下 它使用apn module var apn require apn var ca entrust 2048 ca cer
  • 将一个函数中的可变参数传递给 D 中的另一个函数

    我有一个可变的 D 风格函数foo format 这是一个包装器writefln 我想做这样的事情 foo format lt gt writefln format 本质上 将省略号参数传递给 writefln 我知道这在 C C 中并不容