Нужно сравнить два объекта в шаблонном методе. В C# я бы написал:
public static bool Compare<T>(T a, T b)
{
return a.Equals(b);
}
Можно ли что-то подобное провернуть в C++?
В C++ для сравнения объектов активно используется оператор == (может быть даже перегруженный). Но нужно учесть, что строки в стиле Си таким образом сравнивать не стоит, и поэтому для этого случая можно написать отдельную перегрузку.
template <typename T>
bool Compare(const& T a, const& T b)
{
return a == b;
}
bool Compare(const char* a, const char* b)
{
return !std::strcmp(a, b);
}
Продвижение своими сайтами как стратегия роста и независимости