Braced-init-list和重载的相等运算符

时间:2015-11-12 15:25:15

标签: c++ c++11 c++14

我想重载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});

0 个答案:

没有答案