繁体   English   中英

如何使用 google-test 检查向量中的内容?

[英]How do I check the contents in a vector using google-test?

std::vector<uint8_t> vector1(10);
std::vector<uint8_t> vector2(10);

std::fill(vector1.begin(), vector1.end(), 2);
std::fill(vector2.begin(), vector2.end(), 2);

EXPECT_EQ(vector1, vector2);

上面的 EXPECT_EQ() 是否检查 vector1 和 vector2 中的内容是否相等? 如果不是,我如何使用 googletest EXPECT_* 函数检查 vector1 和 vector2 中的内容是否相等?

googletest 的文档解释了如何测试 C 字符串和 c++ 字符串对象的内容,但没有解释如何检查 c++ 向量的内容。

EXPECT_EQ使用operator ==比较对象,operator ==用于std::vector (引用自 cppreference):

检查lhsrhs的内容是否相等,即它们具有相同数量的元素,并且lhs每个元素与rhs中相同位置的元素比较相等。

所以答案是肯定的,它将比较向量的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM