Я хочу иметь возможность объединить несколько разных аргументов в одну строку, используя ostringstream. Таким образом, я могу зарегистрировать полученную единую строку без каких-либо случайных проблем.stringstream с рекурсивной вариационной функцией?
Я получил это далеко:
template <typename T>
void MagicLog(T t)
{
std::cout << t << std::endl;
}
template<typename T, typename... Args>
void MagicLog(T t, Args... args) // recursive variadic function
{
std::cout << t << std::endl;
MagicLog(args...);
}
template<typename T, typename... Args>
void LogAll(int logType, T t, Args... args)
{
std::ostringstream oss;
MagicLog(t);
MagicLog(args...);
//Log(logType, oss.str());
}
Так что мне нужно заменить зЬй :: COUT с ОСС, что я сделал в функции LogAll, я попытался передать его в качестве аргумента других функций, но это было жалуясь на «удаленную функцию» ...
Итак: Как я могу получить рекурсивную вариационную функцию для принятия другого параметра - ostringstream?
Какая полная ошибка? – 0x499602D2
Полная ошибка была «ошибка c2280, пытающаяся ссылаться на удаленную функцию», единственное, что в ответе у меня не было, - это знак & ... – ManIkWeet