Вопросы по теме 'variadic-functions'

Есть ли ошибки, использующие varargs со ссылочными параметрами?
У меня есть этот фрагмент кода (обобщенный)... AnsiString working(AnsiString format,...) { va_list argptr; AnsiString buff; va_start(argptr, format); buff.vprintf(format.c_str(), argptr); va_end(argptr); return buff; }...
9497 просмотров
schedule 15.05.2022

Для чего именно va_end? Всегда ли необходимо вызывать его?
va_end - Макрос для сброса arg_ptr . После доступа к списку переменных аргументов указатель arg_ptr обычно сбрасывается с помощью va_end() . Я понимаю, что это необходимо, если вы хотите повторить список, но действительно ли это...
15714 просмотров
schedule 18.11.2023

Передача многоточия в другую функцию с переменными числами
У меня примерно 30 вариативных функций. Каждый принимает путь в качестве последнего аргумента, например: bool do_foo(struct *f, int q, const char *fmt, ...) В каждой функции я должен проверить, что расширенный формат меньше или равен...
37396 просмотров
schedule 31.05.2023

Каким было дизайнерское решение для функций с переменным числом переменных, которым нужен массив?
Мне любопытно, и я надеюсь, что кто-то может пролить свет на это, но почему функции С#, которые принимают «параметры», должны быть массивом? Я понимаю, что объекты в списке параметров вводятся в массив, но что, если кто-то захочет создать функцию с...
1406 просмотров

Последний именованный параметр не является функцией или массивом?
Этот вопрос касается функций vararg и последнего именованного параметра перед многоточием: void f(Type paramN, ...) { va_list ap; va_start(ap, paramN); va_end(ap); } Я читал стандарт C и нашел следующее ограничение для макроса va_start...
1103 просмотров
schedule 31.01.2023

Развертывание var args в AS3
Мне интересно, есть ли способ распаковать список аргументов переменной длины в AS3. Возьмем, к примеру, эту функцию: public function varArgsFunc(amount:int, ...args):Array { if (amount == 3) { return args } else {...
7516 просмотров
schedule 27.01.2023

передать переменное количество аргументов в классе case scala (2.8) родительскому конструктору
Я экспериментировал с переменными аргументами конструктора для классов case в Scala, но не смог передать их конструктору родительского класса case: abstract case class Node(val blocks: (Node => Option[Node])*) case class Root(val elementBlocks:...
13418 просмотров

Как написать ленивую версию orElse с переменным аргументом
Можно ли написать обобщенный метод orElse из Option , который принимает переменное количество аргументов? То есть вместо: lazy val o1 = { println("foo"); None } lazy val o2 = { println("bar"); Some("bar") } lazy val o3 = { println("baz");...
863 просмотров

Можно ли отправить переменное количество аргументов функции JavaScript?
Можно ли отправить переменное количество аргументов в функцию JavaScript из массива? var arr = ['a','b','c'] var func = function() { // debug alert(arguments.length); // for(arg in arguments) alert(arg); }...
129352 просмотров
schedule 07.07.2023

Добавление аргументов по умолчанию в вариативный макрос
Можно ли добавить аргументы по умолчанию перед переменным аргументом в вариативном макросе? например, у меня есть версия макроса что-то вроде #define MACRO(arg1, ...) func(arg1, ##__VA_ARGS__) Я хотел бы добавить еще 2 аргумента по умолчанию...
7038 просмотров

Разделить параметры через запятую в LaTeX
Я пытаюсь создать команду, похожую на LaTeX \cite{} , которая принимает список таких параметров, разделенных запятыми. \cite{Wall91, Schwartz93} Я хотел бы передать каждый элемент в списке, разделенном запятыми, который параметр представляет...
9280 просмотров
schedule 18.12.2022

Повторяющиеся параметры по имени
Как передать повторяющиеся параметры по имени в Scala? Следующий код не работает: scala> def foo(s: (=> String)*) = { <console>:1: error: no by-name parameter type allowed here def foo(s: (=> String)*) = {...
1963 просмотров

макрос target-c для функции с переменным числом переменных
Вот пример того, чего я пытаюсь достичь. Я пытаюсь создать макрос, который будет выглядеть так: SOMEMACRO(obj, obj, obj, ..., obj); Макрос будет компилироваться в: some_function(obj, obj, obj, ..., obj, SOMETHING_ELSE, SOMETHING_ELSE);...
1367 просмотров
schedule 23.10.2023

Как использовать оператор в lua с кодом C
У меня есть функция, которая принимает переменное количество аргументов в C, которые я хочу передать другой функции lua. В чистом Lua я мог бы сделать что-то вроде этого function foo(...) print(...) end Как бы я сделал то же самое, если...
1628 просмотров
schedule 04.02.2023

Получение типа переданного аргумента в вариационной функции
Есть ли какой-нибудь трюк, чтобы получить тип переданных аргументов без явного указания типа в строке в качестве одного из аргументов? Чтобы добавить сообщение прямо сейчас, в основном то, что я хочу сделать, это если это тип А функция...
1257 просмотров
schedule 09.04.2023

Может ли stdcall иметь переменные аргументы?
Насколько мне известно, переменные аргументы можно использовать только в соглашении об очистке стека вызывающей стороны. Кстати, WinApi StringCchPrintfW объявляется так (я удалил SAL). __inline HRESULT __stdcall StringCchPrintfW(...
2418 просмотров

C Функция проверки ошибок
Для моего класса системного программирования мы много программируем на C и должны проверять ошибки большинства функций, поскольку в настоящее время мы учимся программировать с помощью pthreads. Причина, по которой я говорю, что это не настоящая...
2517 просмотров

Передать содержимое кортежа в качестве аргументов функции с переменным числом аргументов
Я некоторое время играю с С++ 0x, и теперь я хочу использовать вариативные шаблоны и кортеж для реализации класса «Задача». Я собираюсь передать объекты Task во вновь созданные потоки (используя pthread). Класс задачи будет содержать указатель на...
2569 просмотров

Java: как я могу создать функцию, которая поддерживает любое количество параметров?
возможно ли создать функцию в java, которая поддерживает любое количество параметров, а затем иметь возможность перебирать каждый параметр, предоставленный функции? Благодарность кфир
11799 просмотров
schedule 24.02.2024

С++ функция varargs/variadic с двумя типами аргументов
Я пытаюсь реализовать вариативную функцию. Я поискал в Интернете и в итоге обнаружил, что большинство примеров обрабатывают только один тип аргументов (например, вычисление среднего значения многих целых чисел). В моем случае тип аргумента не...
2577 просмотров
schedule 20.04.2022