【发布时间】:2025-12-11 11:30:02
【问题描述】:
我有一个std::vector 的参数,我想用它们调用一个函数。有没有办法做到这一点?
特别是函数是mysqlx select 函数,参数是我要查询的列;它们都是std::string 类型。该函数的目的是减少代码库中的重复。
(这似乎是一个普遍有用的主题,但我无法通过搜索找到答案。如果我错过了它并且已经回答了,请指出我的问题并将其作为副本关闭,谢谢。)
【问题讨论】:
-
你知道编译时向量的大小吗?
-
“我有一个 std::vector 参数,我想用它们调用一个函数。有什么办法吗?”是的。通过调用函数,将向量作为参数传递,并通过遍历向量来创建 SQL 语句。
-
你能添加一些代码来显示你想要实现的目标吗?
-
@Artyer 不,向量会有不同的大小。
-
不幸的是,将向量转换为元组似乎只能用于固定大小的向量(请参阅here),否则您可以使用
std::apply。foo是“真正的可变参数”(即任意数量的参数)还是最多只有 N 个(例如 0 到 5 个参数)?