Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 7

Шаблон классов веторов обьясните...

23.05.2009, 22:37. Показов 1001. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем нужна помощь...Необходимо при помощи шаблона класса векторов, определить класс прямоугольных матриц(конструктор, диструктор,операция присваивания,доступ к элементам, операция +, операция *) т.е.по сути определить ветор а в нем ячейки есть вектора...Помогите, кто знает как это реализовать...всю башку сломал...и как обратится к этому классу потом?(препод сказал что как то через наследования) Вот мой шаблон класса векторов:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
    
template <class T>
    class TVector
    {
    protected:
        int n;
        T *v;
    public:
        TVector(int _n);                   
        TVector(const TVector  & p);
        T & operator [](int k);
        TVector & operator =(const TVector & p);
        TVector & operator +(const TVector & p);
        TVector & operator *(const TVector & p);
        ~TVector();
    };
        //конструктор
    template <class T>
    TVector<T>::TVector(int _n=0)                   
            : n(_n), v(new T[n])
        {
        }
    //коструктор копирования
    template <class T>
    TVector<T>::TVector(const TVector <T> & p)
        {
            n=p.n;
            v=new T[n];
            v[i]=p.v[i];
            return *this;
        }
        //оператор []
    template <class T>
    T & TVector<T>::operator [](int tk)
    {
    //  if (tk<0 || tk>=n) throw "vixod za vector";
        return v[tk];
    }
    // оператор =
    template <class T>
    TVector<T> & TVector<T>::operator =(const TVector<T> & p)
    {
        if (n!=p.n)
        { 
            if (!v) delete []v;
            v=new T[n=p.n];
        }
        for (int i=0; i<n; i++)
            v[i]=p.v[i];
        return *this;
    }
    //оператор +
    template<class T>
    TVector<T>& TVector<T>::operator + (const TVector<T>& p)
    {
        //if(n!=p.n) throw "Razmer ne podxodit";
        TVector res(n);
        for(int i=0;i<n;i++)
            res.v[i]=v[i]+p.v[i];
        return res;
    
    }
    //оператор *
    template<class T>
    TVector<T>& TVector<T>::operator* (const TVector<T>& p)
    {
 
 
    }
    //деструктор
    template <class T>
    TVector<T>::~TVector()
    {
        if (!v) delete[] v;
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.05.2009, 22:37
Ответы с готовыми решениями:

Шаблон классов
Здорова! Не получается никак составить шаблон для классов: struct element; struct Link { element *prev, *next;//informaci9...

Иерархия классов + шаблон
Помогите проверить, правильно ли я реализовал иерархию классов. базовый класс:Дата(год,месяц, день) ...

LNK2019 шаблон классов
Доброго времени суток. Пишу шаблон классов: akima.h // файл объявления #ifndef AKIMA_H #define AKIMA_H ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.05.2009, 22:37
Помогаю со студенческими работами здесь

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

Шаблон классов: как добавить файлы этого шаблона к проекту?
Друзья, подскажите, как в Visual Studio 2010 в проекте типа Windows Form создать свой шаблон класса, то есть как добавить файлы этого...

Программа выдаёт ошибку при вызове конструкторов разных классов в списке.Используется шаблон
В чём суть проблемы: в односвязном списке есть функция загрузки из файла. Вот она: template &lt;typename T&gt; int...

Как переделать эту прогу в шаблон классов "Двусвязный список" произвольных элементов
#include &lt;iostream.h&gt; #include &lt;stdlib.h&gt;2 #include &lt;conio.h&gt; using namespace std; struct Element { public: double...

Писать сайт с нуля, бесплатный шаблон WP или платный шаблон WP?
Добрый день. Начинаю писать небольшой сайт, что в нем будет: Главная страница, Статьи, Контакты, Решения задач, Видео уроки,...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru