1 / 1 / 1
Регистрация: 09.04.2014
Сообщений: 70
1

Трудности в реализации класса

10.08.2015, 20:48. Показов 420. Ответов 4
Метки нет (Все метки)

Не могу понять, почему не работают конструкторы класса... Прошу понятного объяснения=)
вот код
1 файл
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
#ifndef ___MAS
#define ___MAS
 
template< typename T>
class Massive {
private:
    T *mas;
    int Size;
public:
    Massive();
    Massive(int);
    //Massive(const Massive &);
    virtual ~Massive();
    //int search(T);
    //int size() const;
    //void resize(int);
    //void sort();
    //void get();
    //void set();
    //Massive operator+(Massive);
    //void operator+=(T);
    //bool operator==(Massive);
    //Massive operator=(Massive);
    //Massive operator-(int);
    //T& operator[](int);
};
 
#endif
2 файл
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
#include<iostream>
#include"MyMassive.h"
 
 
template<typename T>
Massive<T>::Massive() {
 
    Size = 1;
    mas = new T[Size];
    mas[0] = 0;
}
 
template<typename T>
Massive<T>::Massive(int sz) {
 
    Size = sz > 0 ? sz : 1;
    mas = new T[Size];
    for (int i = 0; i < Size; ++i)
        mas[i] = 0;
}
 
template<typename T>
Massive<T>::~Massive() {
 
    delete[] mas;
}
main
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
#include<conio.h>
 
#include"MyMassive.h"
 
using std::cout;
using std::cin;
using std::endl;
 
 
int main(int argc, char * argv[]) {
 
    Massive<int> Mas(10);
    _getch();
    return 0;
}
Ошибки(Пишу в MSVS 2013)
1)Error 1 error LNK2019: unresolved external symbol "public: __thiscall Massive<int>::Massive<int>(int)" (??0?$Massive@H@@QAE@H@Z) referenced in function _main c:\Users\devilrigoll\documents\visual studio 2013\Projects\task_1_2_01\task_1_2_01\main.obj task_1_2_01
2)Error 2 error LNK2019: unresolved external symbol "public: virtual __thiscall Massive<int>::~Massive<int>(void)" (??1?$Massive@H@@UAE@XZ) referenced in function _main c:\Users\devilrigoll\documents\visual studio 2013\Projects\task_1_2_01\task_1_2_01\main.obj task_1_2_01
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.08.2015, 20:48
Ответы с готовыми решениями:

Отделение интерфейса от реализации класса: компиляция кода реализации
Доброго времени суток, У меня возникла проблема с отделением интерфейса от реализации класса....

Алгоритм LZ78 или трудности реализации
Предыстория: одним солнечным утром, когда был уже совсем вечер, решил я написать архиватор....

Написать шаблон класса на основе класса vector для реализации стековой структуры данных
Пыталась написать код, но не уверена будет ли такая реализация корректной, можно ли это сделать...

трудности с пониманием синтаксиса на примере реализации паттерна "стратегия"
#include &lt;iostream&gt; #include &lt;string&gt; // Иерархия классов, определяющая алгоритмы сжатия...

4
Эксперт С++
8430 / 4102 / 895
Регистрация: 15.11.2014
Сообщений: 9,216
10.08.2015, 20:51 2
Цитата Сообщение от DevilRigoll Посмотреть сообщение
Не могу понять, почему не работают конструкторы класса... Прошу понятного объяснения=)
перетащите реализацию шаблона в хэдэр, где он был объявлен.
0
1 / 1 / 1
Регистрация: 09.04.2014
Сообщений: 70
10.08.2015, 21:11  [ТС] 3
а можно как-нибудь исправить это без переноса в хэдэр?
0
Эксперт С++
8430 / 4102 / 895
Регистрация: 15.11.2014
Сообщений: 9,216
11.08.2015, 00:57 4
Цитата Сообщение от DevilRigoll Посмотреть сообщение
а можно как-нибудь исправить это без переноса в хэдэр?
не можно.
0
lss
936 / 864 / 356
Регистрация: 10.10.2012
Сообщений: 2,706
11.08.2015, 04:00 5
Цитата Сообщение от DevilRigoll Посмотреть сообщение
а можно как-нибудь исправить это без переноса в хэдэр?
Можно. Сделай #include второго файла в конце первого (перед endif).
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.08.2015, 04:00

Трудности при создании класса
Делаю приложения на Windows Forms. Надо сделать иерархию классов. В абстрактом классе описал нужные...

Ошибки в реализации класса Vector3D
Здравствуйте. Помогите дурачку. Создать класс Vector3D. Реализовать: сложение векторов, скалярное...

код реализации класса вектор
привет!!!!!!! поделитесь пожалусто кодом реализации класса вектор!!!!!! пожалусто........ нужно к...

Детали реализации конструктора класса
Есть конструктор условного класса картинки и я не совсем понимаю нескольких вещей: #include...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.