我有一个带有参数包的模板函数。我想将其扩展为对第二个函数的调用,同时还提供 pack 中项目的索引。我可能可以弄清楚如何用递归来做,但我想尝试用折叠表达式来做。
这是我希望参数包扩展成的功能
template<typename T>
void addToRecord(Record& rec, int idx, T&& val)
{
// Do some stuff.
}
这是接受参数包的函数
template<typename... ARGS>
void addRecord(ARGS&& ...values)
{
Record rec;
// addToRecord(rec, ??????) How do expand 'values' here addToRecord with index of each item?
}
这可能吗?我意识到这并不重要,但我也在尝试更好地使用折叠表达式。