Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2015, 17:43   #21
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Конечно, только один будет с типом Т

Можно вызывать так:
newMyArray(5, A(1), A(2), A(3));

Чтоб работало "как следует" нужно использовать variadic template из нового стандарта С++ либо сделать как я предлагал - одна функция в нескольких вариантах, с разным количеством параметров. Грубо, но прокатит.
waleri вне форума Ответить с цитированием
Старый 11.08.2015, 18:04   #22
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Уже пробовал делать так:
Цитата:
newMyArray(5, A(1), A(2), A(3));
Даже проверял без шаблонов:

Код:
char* newMyArray(int size, char firstArg,...)
{
    char *array = new char[size];
    va_list args;
    va_start(args, firstArg);
    array[0] = firstArg;
    for(int i=1;i<size;i++)
        array[i] = va_arg(args, char);
    va_end(args);
    return array;
}
Код:
char *str = newMyArray(4,'1','2','3','\0');
Результат один и тот же, вылетает на va_arg.
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Krasiosoft вне форума Ответить с цитированием
Старый 13.08.2015, 14:49   #23
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

Цитата:
Сообщение от Krasiosoft Посмотреть сообщение
Тут есть еще одна проблема, а именно:
Код:
array[i]=va_arg(args, int);
.
у меня работало именно так.

хотя при изменении типа T на char наверное будет косяк.
RAFA91 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Инициализация массива. dmitryfisko Помощь студентам 4 03.02.2014 21:36
Инициализация массива строк в Си majuw Помощь студентам 0 19.04.2013 22:55
инициализация массива, вывод массива и обработка массива должны быть реализованы с помоshью функций airesjke Помощь студентам 0 02.03.2012 16:14
инициализация массива parazzzitka93 Общие вопросы C/C++ 11 02.04.2011 21:01
инициализация массива Arcueid1691 Паскаль, Turbo Pascal, PascalABC.NET 2 01.06.2009 02:36