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

371
09 августа 2017, 20:20

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

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

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

Answer 1

В 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);
}
READ ALSO
Проблемы с библиотекой (arduino)

Проблемы с библиотекой (arduino)

Есть библиотека: DynamicCollectionh DynamicCollection

281
Boost::asio потеря пакетов по TCP

Boost::asio потеря пакетов по TCP

Имеется клиент-серверное приложениеСервер передает сообщения клиенту, число отправленных сообщений фиксируется

350
Gstreamer c++ ошибка &#39;G_IS_OBJECT (object)&#39; failed

Gstreamer c++ ошибка 'G_IS_OBJECT (object)' failed

Есть батник принимающий видео трансляцию по RTP средствами gstreamerПытаюсь написать программу, которая делал бы тоже самое, что бы не было нужды...

345
Контейнер &lt;set&gt; C++

Контейнер <set> C++

Возникла задача, в которой надо обращаться с двумя соседними элементами множества setТакой вопрос: как это сделать? Гуглил, нигде не нашел...

354