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

Как использовать шаблонную функцию в другой единице трансляции? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нахождение определенного интеграла с указанной точностью тремя методами (переделать код с использованием указателей) http://www.cyberforum.ru/cpp-beginners/thread1068415.html
Задано функцию. Написать программу для нахождения определенного интеграла с точностью Е = 10-3 для заданных границ с помощью трех методов: 1) прямоугольников 2) трапеций 3) Симпсона. Выбор метода...
C++ Подскажите IDE для С++ Учил С#, пользовался MS Visual Studio 2008. Сейчас думаю перейти на С++, пользовался Code Blocks, Dev C++, C++ Builder 6. Так вот по сравнению с Visual Studio все эти IDE вообще кокае-то неудобные и... http://www.cyberforum.ru/cpp-beginners/thread1068410.html
Вывести на экран все возможные перестановки введенных ползователем символов C++
С клавиатуры задается последовательность символов. Написать программу, которая выводит на экран все возможные перестановки введенных символов.
Написать рекурсивную функцию перевода десятичного числа в двоичное и используя ее найти и вывести на печать двоичные коды первых 100 чисел Фибоначчи C++
Написать рекурсивную функцию перевода десятичного числа в двоичное и используя ее найти и вывести на печать двоичные коды первых 100 чисел Фибоначчи. Выводит числа Фибоначчи Нужно написать...
C++ Выполнить слияние двух рассортированных бинарных файлов в третий упорядоченный файл http://www.cyberforum.ru/cpp-beginners/thread1068401.html
1. Выполнить слияние двух рассортированных бинарных файлов в третий упорядоченный файл. Сортировок не использовать. Дополнительных массивов и файлов не использовать.
C++ Подобрать учебники Подкиньте пару названий книг. Как разработать программы для сети. подробнее

Показать сообщение отдельно
export
0 / 0 / 0
Регистрация: 11.01.2014
Сообщений: 2
11.01.2014, 14:32  [ТС]
Альтернативы есть. Можно эту шаблонную функцию поместить в заголовочный файл и потом подключить его.
Но у Страуструпа написано именно так. Эта функция находится в file.cpp
C++
1
2
3
4
5
export template<typename T>
T twice(T t)
{
    return t+1;
}
А в файле file2.cpp можно ее использовать
file2.cpp

C++
1
2
3
4
5
6
7
template<typename T>
T twice(T t);
 
int g(int i)
{
    return twice(i);
}
Но визуал студио показывает ошибку. Вот и хотим понять в чем ошибка.

Добавлено через 1 минуту
Задача пока только одна. Чтобы программа скомпилировалась))

Добавлено через 4 минуты
DU пусть все так остается. Поместим эту функцию в отдельный заголовочный файл и все. Вроде работает.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru