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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
xSCJx
22 / 19 / 1
Регистрация: 24.12.2012
Сообщений: 435
#1

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

19.02.2013, 23:30. Просмотров 343. Ответов 6
Метки нет (Все метки)

Всем привет. В книге "Прата С. Язык программирования С++. Лекции и упражнения - 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++
Работа функции с переменным числом параметров C++
C++ Функции с переменным числом параметров
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1242 / 991 / 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
1425 / 762 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
19.02.2013, 23:51     Ошибка в шаблонной функции с переменным числом аргуметом #4
VS2012 еще многое из нового стандарта не поддерживает. Пользуйтесь mingw.
Avazart
 Аватар для Avazart
7037 / 5214 / 259
Регистрация: 10.12.2010
Сообщений: 22,920
Записей в блоге: 17
20.02.2013, 00:02     Ошибка в шаблонной функции с переменным числом аргуметом #5
Ага mingw если не ошибаюсь регулярки не поддерживает..
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
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++
Функции с переменным числом параметров 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     Ошибка в шаблонной функции с переменным числом аргуметом
Ответ Создать тему
Опции темы

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