gpt4 book ai didi

C++无限参数到数组

转载 作者:行者123 更新时间:2023-11-30 00:58:12 25 4
gpt4 key购买 nike

我有一个具有以下签名的函数

char requestApiCall(int num, const wchar_t* pParams = 0, ...)
{
...
}

现在我想获取数组中的所有 pParam(或者能够对其进行迭代)。我知道某些宏可以做到这一点,但我不知道该怎么做。

如有任何帮助,我们将不胜感激。

附言如果重要的话,我会使用 MinGW。

更新


我的问题引起了困惑。我会尽力澄清(对不起我的语法)。 Object Pascal 和 C# 都能够将无限数量的参数传递给一个方法。在 C# 中,我们使用 params 关键字实现这一点:

void Foo(params string[] strs)
{
...
}
Foo("first", "second", "another one", "etc");

我想在不使用任何对象/类的情况下在 C++ 中实现相同的结果。就我而言,类型安全不是问题,但如果有一种类型安全的方法可以实现该目标,我很乐意听取您的意见 :)

谢谢

最佳答案

您需要查看在stdarg.h 中声明的函数和宏。这是解释它的教程。

http://publications.gbdirect.co.uk/c_book/chapter9/stdarg.html

我不确定您的函数参数应该代表什么,但我认为您会发现它需要更改。

顺便说一下,我发现对于 C++,我通常可以避免使用可变参数函数。这具有保持类型安全的优点。你确定你真的需要可变参数函数吗?

关于C++无限参数到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6892145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com