Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私が持っているとしましょう:
std::vector<Foo> v1; std::vector<Foo> v2; std::vector<Foo>& rV = v1;
このようなテストを行うにはどうすればよいですか?
TEST_EQ(v1, rV); TEST_NOT_EQ(v2, rV);
これは、コードを単体テストする人にとって一般的な問題だと思います。
2つのオブジェクトが同じであるかどうかは、それらのアドレスを比較することで検出できます。
if (&v1 == &rV)
それらが同じベクトルを参照している場合にのみtrueになります。
(もちろん、address-of演算子をオーバーロードしていないと仮定します:-)