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

Использование шаблона класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Выделение памяти. Ошибка http://www.cyberforum.ru/cpp-beginners/thread753950.html
Доброе утро! Есть программа, которая хранит сведения о студентах. В ней реализовано 2 класса. 1 - класс группа 2 - студент. Всё работает: Запись всех сведений о студенте, добавление студента в группу, вывод всех данных на экран и т.п. Вот только не работает один метод - метод сортировки. Например в случае если в дальнейшем я захочу реализовать поиск по фамилии студента, а студентов с такой...
C++ Выделение памяти под двумерный массив Нужна прога на с++,в которой бы выделялась память для двумерного массива N строк такого вида,как на рисунке>>> За ранее спасибо:) http://www.cyberforum.ru/cpp-beginners/thread753945.html
Подсчет количества элементов ,больше суммы предшествующих в одномерном массиве C++
Нужна программа на с++ , ведущая подсчет элементов, больше суммы предшествующих в одномерном массиве. п.с. утомлю вас еще парой задач выше-сессия ж:( Благодарю заранее:)
Поворот матрицы на 180 градусов по часовой стрелке C++
Нужна программа,которая повернет квадратную матрицу из N строк и N столбцов на 180 по часовой. программа на С++ За ранее благодарю:)
C++ Файлы. Программа, которая определяет если такой момент, что два раза вошли по одному пропуску или два раза вышли по одному (выводит все время истину) http://www.cyberforum.ru/cpp-beginners/thread753915.html
Всем привет. Смысл задания примерно следующий: Есть файл Input.txt. Содержание его примерное такое: 4 123 1 123 -1 123 1 123 -1 Все эти цифры могут меняться. 4 (кол-во считываний, приведенных ниже) может быть любым числом от 1 до 100 (включительно), цифры 123 (номер пропуска) могут быть от 1 до 1000 (включительно), а значение 1 или -1 может быть быть либо 1 либо -1 (это по пропуску пошли...
C++ Из слова 'яблоко' путем 'вырезок' и 'склеек' его букв получить слово 'блок' и 'око' из слово 'яблоко' путем 'вырезок' и 'склеек' его букв получить слово 'блок' и 'око' подробнее

Показать сообщение отдельно
zener
22 / 9 / 1
Регистрация: 16.10.2010
Сообщений: 115
06.01.2013, 13:55     Использование шаблона класса
Здравствуйте.
у меня возникла проблемка при использовании шаблона класса.
C++
1
2
3
4
5
6
7
8
9
10
11
12
template <class X> class CArray
{
public:
    X *myarray;
    int nsize;
    int ncapacity;
 
    CArray(){nsize=0;
    ncapacity=0;};
    void Init();
    void AddElement(X _element);
}
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
26
27
28
29
template <class X> 
void CArray<X>::AddElement(X _element)
{
    if (nsize!=ncapacity)
    {
        for (int i=0;i<ncapacity;i++)
        {
            if (myarray[i]==0)
            {
                myarray[i]=_element;
                break;
            }
        }
        nsize++;
    }
    else
    {
        cout<<"Full"<<endl;
    }
}
 
template <class X>
void CArray<X>::Init()
{
    for (int i=0;i<ncapacity;i++)
    {
        myarray[i]=0;
    }
}
C++
1
2
3
4
5
6
7
8
9
int main()
{
    CArray<double> arr1;
    arr1.ncapacity=3;
    arr1.nsize=0;
    arr1.Init();
    arr1.AddElement(4.6);
    return 0;
}
myarray - динамический массив.
При компиляции вываливаются ошибки:
1.error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall CArray<double>::AddElement(double)" (?AddElement@?$CArray@N@@QAEXN@Z) в функции _main
2. error LNK2019: ссылка на неразрешенный внешний символ "public: void __thiscall CArray<double>::Init(void)" (?Init@?$CArray@N@@QAEXXZ) в функции _main

Подскажите, пожалуйста, из-за чего валятся такие ошибки?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru