Страницы

Поиск по вопросам

суббота, 21 декабря 2019 г.

Аналог Object.Equals на C++?

#cpp


Нужно сравнить два объекта в шаблонном методе. 
В C# я бы написал:

public static bool Compare(T a, T b)
{
    return a.Equals(b);
}


Можно ли что-то подобное провернуть в C++?
    


Ответы

Ответ 1



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

Комментариев нет:

Отправить комментарий