, , , ! =, ( ) , , T, ! =. , :
1) if (a[i] != b[i]), , , != (, std::vector<sample2> marcinj), , std::equal. .
2) , ( , ). , , ( ), , Pixelchemist. , std:: equals .
, , :
template <typename T>
static bool equals(const std::vector<T> &a, const std::vector<T> &b) {
if (a.size() != b.size())
return false;
for (size_t i = 0; i < a.size(); ++i)
if (a[i] != b[i])
return false;
return true;
}
template <typename T>
static bool equals(const std::vector<T*> &a, const std::vector<T*> &b) {
if (a.size() != b.size())
return false;
for (size_t i = 0; i < a.size(); ++i)
if (*a[i] != *b[i])
return false;
return true;
}
1/2/3/4 marcinj. , (operator == (const sample1&)) .
, , .