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

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

Войти
Регистрация
Восстановить пароль
 
KasyanDiGris
0 / 0 / 1
Регистрация: 10.04.2014
Сообщений: 9
#1

Undefined reference в template - C++

10.04.2014, 20:41. Просмотров 187. Ответов 0
Метки нет (Все метки)

Есть шаблонный класс Deque (очередь с двумя концами):
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
template <class Type> class Deque
{
    Type *arr;
    int dimension;
public:
    Deque();
    Deque(const Type &a);
    Deque(const Deque <Type> &a);
    void pushBegin(const Type &a);
    void pushEnd(const Type &a);
    Type popBegin();
    Type popEnd();
    void show();
    bool isNull() {if (dimension == 0) return 1; return 0;}
    friend ostream&  operator <<(ostream& os, Deque <Type> &a);
};
Пытаюсь перегрузить оператор вывода в поток:
C++ (Qt)
1
2
3
4
5
6
7
8
template <class Type> ostream& operator<<(ostream& os, Deque<Type> &a)
{
    for (int i = 0 ; i < a.dimension; i++)
    {
        os << a.arr[i] << " ";
    }
    return os;
}
При вызове оператора:
C++ (Qt)
1
2
3
4
Deque <int> a(1);
    a.pushBegin(0);
    a.pushEnd(2);
    cout << a;
Компилятор выдает ошибку undefined reference to `operator<<(std::ostream&, Deque<int>&)'|
В чем проблема?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2014, 20:41     Undefined reference в template
Посмотрите здесь:

C++ undefined reference to winmain@16
C++ undefined reference to `variable`
C++ GLUT: undefined reference to...
C++ undefined reference / android
C++ undefined reference to `gzdopen'
C++ Problem - Undefined reference to
C++ undefined reference to `vtable for
C++ Ошибка: undefined reference to `libssh2_session_init_ex'
[Linker Error] undefined reference to C++
C++ Error undefined reference to `GetStockObject@4
C++ Undefined reference to `GrPlot'
C++ Undefined reference to `auxDIBIm

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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