我有一些我想与字符串比较的对象。我想知道我应该实现什么方法,以便在用作比较运算符的参数时自动进行对象的转换。
例如:
std::vector<std::vector<int>> set_of_vectors(5, std::vector<int>(10));
for(auto& vec : set_of_vectors)
std::iota(vec.begin(), vec.end(), 1);
在左边我的对象我想将它与一些字符串进行比较。目前,我已经在我的对象上实现了 to_s ,但是即使包含的字符串与我正在比较的字符串相等,我仍然是假的。
提前致谢。
答案 0 :(得分:2)
你需要覆盖你的班级&#39; ==
method
class MyClass
def ==(other)
# custom equal comparison logic here
# if you just need string comparison
to_s == other
end
end