我想重载equals运算符来测试我的一个列表类,如:
assert(L1 == {2, 3, 5, 6, 7, 8, 10});
据我理解这个列表的第五点,我应该可以使用braced-init-lists作为函数的参数:
5) in a function call expression, with braced-init-list used as an argument
所以我的问题是,运算符重载计数为"函数调用表达式"有没有办法获得我想要的语法和语义?
现在我收到错误:
initializer list cannot be used on the right hand side of operator '=='
如果我这样说,我可以让它工作,但那不是我想要的:
assert(L1 == List({2, 3, 5, 6, 7, 8, 10});