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

Шаблон и оператор вывода! - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Конструктор C++ http://www.cyberforum.ru/cpp-beginners/thread37608.html
Привет.Я из этого примера все понял кроме конструктора.Каким образом строка 18 Setcoursename получает от конструктора строку 14 CS101 Introduction to Programming in C++.И зачем нужен setcoursename в строке 13.Обясните новичку как работает конструктор. // Fig. 3.15: GradeBook.h // GradeBook class definition presents the public interface of // the class. Member-function definitions appear in...
C++ Как программно определить диапазоны базовых типов? То есть, скажем, нужно определить максимальное и минимальное значение типа long double. Как это сделать программно? В стандартной библиотеке limits.h нет константы для long double. http://www.cyberforum.ru/cpp-beginners/thread37590.html
C++ отсортировать по количеству встерчаемости
Все имена из заданного списка студентов рассортировать по частоте их встречаемости в этом списке. Что-то никак не могу понять, как это сделать :( Помогите плиз...
написать программу, упорядочивающую слово во входном файле в алфавитном порядке C++
написать программу, упорядочивающую слово во входном файле в алфавитном порядке
C++ реализовать структуру данных кольцо и с помощью неё вывести на экран все варианты слова ABRAKADABRA, полученные циклическим сдвигом влево http://www.cyberforum.ru/cpp-beginners/thread37566.html
реализовать структуру данных кольцо и с помощью неё вывести на экран все варианты слова ABRAKADABRA, полученные циклическим сдвигом влево ABRAKADABRA BRAKADABRAA RAKADABRAAB
C++ написать программу, находящую наибольшую общую часть двух предложений(без учета пробелов) написать программу, находящую наибольшую общую часть двух предложений(без учета пробелов подробнее

Показать сообщение отдельно
Alexandr_LN
1 / 1 / 0
Регистрация: 28.04.2009
Сообщений: 116
02.06.2009, 14:34  [ТС]     Шаблон и оператор вывода!
Да кстати я нашел решение!
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
//---------------------------------------------------------------------------
#include <iostream.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
 
class Cat
{
    public:
    Cat():itsAge(2) {}
    Cat(int age):itsAge(age) {}
    ~Cat() {}
    int GetAge() const {return itsAge;}
    void SetAge(int age) {itsAge=age;}
 
    private:
    int itsAge;
};
 
template <class T>
class Array
{
    public:
    Array(int itsSize=10);
    Array(const Array &);
    ~Array() {delete []pType;}
    int GetSize() const {return itsSize;}
    Array &operator=(const Array &);
    T &operator[](int offset) {return pType[offset];}
    const T &operator[](int offset) const {return pType[offset];}
    ostream &operator<<(ostream &);
 
    private:
    int itsSize;
    T *pType;
};
 
template <class T>
ostream &operator<<(ostream &out,Array<T> &rhs)
{
    for (int i = 0; i < rhs.GetSize(); i++) {
        out << rhs[i] <<endl;
    }
    return out;
}
 
template <class T>
Array<T>::Array(int size):itsSize(size)
{
    pType=new T[size];
    for (int i = 0; i < size; i++) {
        pType[i]=0;
    }
}
 
template <class T>
Array<T>::Array(const Array &rhs)
{
    itsSize=rhs.GetSize();
    pType=new T[itsSize];
    for (int i = 0; i < itsSize; i++) {
        pType[i]=rhs[i];
    }
}
 
template <class T>
Array<T> &Array<T>::operator=(const Array &rhs)
{
    if (this==&rhs) {
        return *this;
    }
    delete []pType;
    itsSize=rhs.GetSize();
    pType=new T[itsSize];
    for (int i = 0; i < itsSize; i++) {
        pType[i]=rhs[i];
    }
    return *this;
}
 
int main(int argc, char* argv[])
{
    Array<int> var;
    Array<Cat> Cats;
    Cat *pCat;
 
    for (int i = 0; i < var.GetSize(); i++) {
        var[i]=i*2;
        pCat=new Cat(i*3);
        Cats[i]=*pCat;
        delete pCat;
    }
 
    cout << var << endl;
 
    /*for (int i = 0; i < var.GetSize(); i++) {
        cout << var[i] << endl;
    } */
 
    int j;
    cin >> j;
 
    return 0;
}
//---------------------------------------------------------------------------
Может кому пригодится )
Спасибо всем за помощь!!!
 
Текущее время: 03:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru