Я пытаюсь использовать параметры по умолчанию в функции шаблона.Ниже приведен минимальный пример того, что я пытаюсь сделать:
В sort.h
template <typename T0, typename T1>
void sort(Vector<T0> &v0,Vector<T1> &v1=0)
{
//sort v0, if (v1 != 0) sort it according to v0
}
В main.cpp
#include "sort.h"
Vector<int> v0;
sort(v0);
Это не компилируется;компилятор выдает ошибку «нет подходящей функции для вызова sort».
В основном эта функция должна сортировать вектор v0 (произвольный тип данных).Кроме того, в качестве параметра может быть задан второй вектор v1 (произвольный), который сортируется так же, как вектор v0.Конечно, я мог бы решить эту проблему, просто используя перегруженные функции, но, поскольку я хотел бы расширить список дополнительных векторов до 5, мне потребуются сотни различных функций.
Обновление: Спасибо за ваши ответы.Я изменил свое описание проблемы, чтобы дать вам лучшее представление о том, что я пытаюсь сделать.