Я наткнулся на объявление функции, например:
int vsa_d(...);
с ...
в качестве единственного параметра.
Я знаю, что с помощью многоточия мы можем ссылаться на несколько объектов, но на что здесь указывает ...
?
Что это значит и для чего предназначено?
Что
...
оценивается компилятором?Можно ли использовать многоточие также в качестве аргумента функции при вызове функции?
Я нашел здесь https://en.cppreference.com/w/cpp/language/variadic_arguments в разделе "Примечания":
В языке программирования C хотя бы один именованный параметр должен стоять перед параметром с многоточием, поэтому printz(...); не действует. В C++ эта форма разрешена, даже если аргументы, переданные такой функции, недоступны, и обычно используется в качестве резервной перегрузки в SFINAE, используя самый низкий приоритет преобразования многоточия в разрешении перегрузки.
Таким образом, он должен использоваться для чего-либо вроде «откатной перегрузки» в «SFINAE».
Что это значит?
error: ISO C requires a named argument before ‘...’
- person RobertS supports Monica Cellio   schedule 01.02.2020and is commonly used as the fallback overload in SFINAE, exploiting the lowest priority of the ellipsis conversion in overload resolution.
- person RobertS supports Monica Cellio   schedule 01.02.2020