Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с const https://www.cyberforum.ru/ cpp/ thread349832.html
Объясните пожалуйста разницу между вызовами двух функций: int func(const char *name) и int func(char *name) Я плохо понимаю - что дает этот спецификатор const? Что может произойти если...
Как получить картинку с видео источника C++
Люди пожалуйста подскажите... Как получить картинку с видео источника, меня интересует как на С++ visual studio получить входящий поток с веб камеры...(в крайнем случае на билдере) Я пытался на...
C++ ffmpeg
Всем привет, помогите начинающему разобраться с такой проблемой: ffmpeg + sdl - очень долго приложение сидит в функции av_find_stream_info (от 2 до 10 секунд). В чем может быть проблема? Заранее...
C++ Linker error При попытке скомпилить программу выдаёт ошибки: undefined reference to `InternetOpenA@20' undefined reference to `InternetConnectA@32' undefined reference to `HttpSendRequestA@20' undefined... https://www.cyberforum.ru/ cpp/ thread347929.html
C++ движок или игра на C++ https://www.cyberforum.ru/ cpp/ thread347709.html
Здравствуйте, интерестно узнать ваше мнение..что будем лучше быстрее: 1. Создать большую игру на C++ Или 2. Написать прогу т.е. движок для содания игр на C++ ...
C++ поиск Handle окна, зная ControlId окна
вопрос по сабжу
Чтение секторов жёсткого в DOS C++
Добрый вечер! Проблема заключается именно в том, что программа должна работать под DOS, и ей не важно что есть на диске и какая там операционная система, необходимо просто прочитать сектора. Много...
C++ В чем разница между long int и short int Извините если вопрос нубский, но я ни как не могу понять смысл long int и short int. Например с unsingned все ясно. Один байт в int зарезервирован под знак. И если мы сообщаем компилятору что тип... https://www.cyberforum.ru/ cpp/ thread346170.html
C++ Ищу сайт с задачами по программированию на C++ https://www.cyberforum.ru/ cpp/ thread345615.html
Здравствуйте кто знает,есть ли какой нибудь сайт (или книга) с задачами по массивам и прочим на C++, и чтобы с решениями или с ответами, буду очень благодарен, заранее Спасибо!:)
C++ Тестовое задание от работадателя. Хотелось бы услышать критику. Пробую устроиться программистом. Вот одна из компаний выслала мне тестовое задание следующего содержания: Тестовое задание для соискателей. Напишите (консольную) программу, принимающую на вход... https://www.cyberforum.ru/ cpp/ thread345507.html
117 / 114 / 10
Регистрация: 02.06.2011
Сообщений: 280
0

функции с переменным количеством параметров

11.09.2011, 00:46. Просмотров 4518. Ответов 29
Метки (Все метки)

для некоторого класса необходимо чтобы его конструктор принимал переменное количество параметров.
как это делается - понятно.
я использую va_list и т.д. из varargs.h
сложность возникла в том что с ее помощью нельзя узнать сколько параметров было передано
сейчас я делаю так
C++
1
2
3
4
5
    AddToList(frst);
va_list ap;
va_start(ap,frst);
while (AddToList(va_arg(ap,int)) > 0);
va_end(ap);
пока параметры больше нуля они добавляются в список с помощью AddToList(int);
но после последнего переданого параметра va_arg возвращает случайное число(наверно тож со стека)
его конечно можно отсеять проверкой на малый диапазов(обычно этот "мусор" очень большой по модулю) но есть вероятность что попадется малое значение и запишется в список - а это очень плохо!
собственно вопрос:
можно ли вообще как-то узнать сколько параметров было передано или еще каким-то образом правильно отсеять мусор?

P.S. как замену можно конечно первым параметром передавать количество аргументов(это все-же лучше чем случайный мусор) но тоже не очень удобно и надежно(можно не правильное количество передать и хотелось бы чтоб пользователь класса вообще не задумывался о количестве аргументов)

Вернуться к обсуждению:
функции с переменным количеством параметров
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.09.2011, 00:46
Готовые ответы и решения:

Функции с переменным числом параметров
Помогите пожалуйста исправить ошибку в программе!!! Проблема в том, что не учитывается степень...

Функции с переменным количеством параметров
Прописываю в заголовке: void __fastcall TestClass::Test(int x, ...); компилятор выдает ошибку:...

Функции по переменным количеством параметров
нужна помощь по работе с такой функцией .. Искал в книге Страуструпа, не понял пример, помогите,...

Массив в функции с переменным количеством параметров
Добрый день. Не могу разобраться, как в функции с переменным количеством параметров сделать...

29
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.