我有一个存储指针的向量向量。目前,我遍历它们并比较每个指针,如果我发现它们不相等,则向量也不相等。但我想知道这是否是正确的做法。
更新:
更新:
std::vector<std::vector<Combination*> > combinations;
std::vector<std::vector<Combination*> > combinations;
operator==
。它首先检查两个向量的大小是否相等。如果它们相等,则随后使用 operator==
来逐个比较每个元素。因此,如果你有一个向量的向量或向量的向量的向量,它会递归地工作。尽管这并不是严格的递归,因为每个 operator==
实际上都是一个不同的函数。 std::equal
。
operator==
。否则,你现在的做法就很好。 - Benjamin Lindley