Здравствуйте, rg45, Вы писали:
А>>А>>if (boost::algorithm::any_of_equal(std::initializer_list<int>{1,2,4,6,7}, x))
А>> std::cout << "x is either 1,2,4,6 or 7" << std::endl;
А>>
R>Заменяем "{1,2,3,4,6,7}" на "{a,b,c,d,e}" и все равно получаем копирование.
Это копирование и имелось в виду. Нет второго копирования в std::set.
R>Да и назвать такое выражение "синтаксическическим сахаром" как-то язык не поворачивается. Лично мне больше по душе "in_list(x, a, b, c, d, e)".
Согласен: в такой конструкции много букв.