Может быть, вы можете попробовать обернуть параметры в структуру.
struct Params
{
int status;
std::string param1;
};
void func1(Params& params)
{
int status = params.status;
func2(params);
}
void func2(Params& params)
{
std::string param1 = params.param1;
}
Иногда я использую этот трюк, когда список параметров сильно изменяется во время рефакторинга.
Я не уверен по твоему вопросу, может ли это решить твою проблему.
-
Интересно отметить, что то же самое можно использовать для шаблонов, определив typedefs и тому подобное в структуре (я обычно всегда использую класс в своем коде, так как в основном нет различия между struct и class в c ++) нормальных членов. Это может быть решением проблемы необходимости поддерживать код с большим количеством шаблонов, которые сильно изменятся во время рефакторинга или разработки.