Тестирование, если что-то является ссылкой на что-то другое

Предположим, у меня есть:

  std::vector<Foo> v1;
std::vector<Foo> v2;
std::vector<Foo>& rV = v1;

Как я могу сделать такой тест:

  TEST_EQ(v1, rV);
TEST_NOT_EQ(v2, rV);

Я представляю, что это общая проблема для тех из вас, кто тестирует ваш код модульно.

3

Решение

Вы можете определить, совпадают ли два объекта, сравнив их адреса.

if (&v1 == &rV)

будет истинным, только если они ссылаются на один и тот же вектор.

(при условии, конечно, что вы не перегружены адресом оператора 🙂

7

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector