Вопрос о функциональном определении (три точки в параметрах..)

Простой - map и split для каждой запятой, затем посмотрите индекс, для которого это должно быть: 116]

56
задан Iharob Al Asimi 2 December 2015 в 21:40
поделиться

4 ответа

Замещающие знаки означают, что существует переменное количество аргументов после. Место Вы будете использовать их (возможно, не понимая) printf семья функций.

Они позволяют Вам создавать функции того стиля, где параметры не известны заранее, и можно использовать функции varargs (va_start, va_arg и va_end) для достигания определенных аргументов.

Эта ссылка здесь имеет хороший трактат на printf использование списков аргумента переменной.

42
ответ дан paxdiablo 26 November 2019 в 17:29
поделиться
15
ответ дан Assaf Lavie 26 November 2019 в 17:29
поделиться

Их называют замещающим знаком, и они означают, что функция может взять неопределенное количество параметров. Ваша функция может, вероятно, быть вызвана как это:

abc( "foo", 0 );
abc( "foo", "bar", 0 );

должен быть способ указать на конец списка. Это может быть сделано при помощи первого параметра как ион printf (0 строк формата, или специальным разделителем, нулем в примере выше.

Функции с переменным количеством параметров считают невоспитанностью в C++, поскольку никакая проверка типа или определяемые пользователем преобразования не могут быть выполнены на параметрах.

11
ответ дан 26 November 2019 в 17:29
поделиться

Это - то, что вызвано varargs функция или функция аргумента переменной в C.

Один Вы, вероятно, распознаете, printf.

4
ответ дан Andrew Barrett 26 November 2019 в 17:29
поделиться