Форум программистов, компьютерный форум CyberForum.ru

Ошибка в шаблонной функции с переменным числом аргуметом - C++

Восстановить пароль Регистрация
 
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
19.02.2013, 23:30     Ошибка в шаблонной функции с переменным числом аргуметом #1
Всем привет. В книге "Прата С. Язык программирования С++. Лекции и упражнения - 2011",
есть пример такого кода:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <string>
 
void show_list() { }
 
template <typename T>
void show_list(const T& value)
{
    std::cout << value << '\n';
}
 
template<typename T, typename... Rgs>
void show_list(const T& value, const Rgs&... rgs)
{
    std::cout << value << ", ";
    show_list3(rgs...);
}
 
int main()
{
    show_list(14.99*14.99, '!', 7, "String object");
 
    system("PAUSE");
    return 0;
}
при компиляции в VS2012, он выдаёт след. ошибки:

error C2143: syntax error : missing ',' before '...'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2143: syntax error : missing ',' before '&'
error C2660: 'show_list' : function does not take 4 arguments


помогите пожалуйса, что неправильно в коде?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2013, 23:30     Ошибка в шаблонной функции с переменным числом аргуметом
Посмотрите здесь:

C++ функции с переменным числом параметров
Функции с переменным числом аргументов C++
C++ функции, с переменным числом параметров
C++ Функции с переменным числом параметров
Функции с переменным числом параметров C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
19.02.2013, 23:35     Ошибка в шаблонной функции с переменным числом аргуметом #2
Visual Studio пока всё ещё не умеет вариадические шаблоны. С кодом всё окей.
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
19.02.2013, 23:50  [ТС]     Ошибка в шаблонной функции с переменным числом аргуметом #3
~OhMyGodSoLong~, а я думал что VS2012 полностью поддерживает С++ 11. , а где тогда такой код скомпилировать? В gcc?

Добавлено через 7 минут
во http://liveworkspace.org/code/mNuxM$1, круто.
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
19.02.2013, 23:51     Ошибка в шаблонной функции с переменным числом аргуметом #4
VS2012 еще многое из нового стандарта не поддерживает. Пользуйтесь mingw.
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,591
Записей в блоге: 17
20.02.2013, 00:02     Ошибка в шаблонной функции с переменным числом аргуметом #5
Ага mingw если не ошибаюсь регулярки не поддерживает..
vua72
410 / 410 / 83
Регистрация: 28.11.2010
Сообщений: 1,158
20.02.2013, 00:10     Ошибка в шаблонной функции с переменным числом аргуметом #6
Цитата Сообщение от SERUYBKR Посмотреть сообщение
show_list3(rgs...);
а где она у вас определена?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2013, 00:36     Ошибка в шаблонной функции с переменным числом аргуметом
Еще ссылки по теме:

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

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
20.02.2013, 00:36  [ТС]     Ошибка в шаблонной функции с переменным числом аргуметом #7
Цитата Сообщение от vua72 Посмотреть сообщение
а где она у вас определена?
ступил просто. Я видел эту ошибку. Вот всё норм.
http://liveworkspace.org/code/mNuxM$1
Yandex
Объявления
20.02.2013, 00:36     Ошибка в шаблонной функции с переменным числом аргуметом
Ответ Создать тему
Опции темы

Текущее время: 02:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru