View difference between Paste ID: xabY0w08 and Bc9z73GV
SHOW: | | - or go back to the newest paste.
1
//MAIN.CPP
2
3
#include "vector.h"
4
#include <iostream>
5
using namespace std;
6
7
int main()
8
{
9
    cout << "--- Vektor A(2);\n";
10
    Vektor A(2);
11
    cout << "\n--- A.displayVektor();\n";
12
    A.displayVektor();
13
    cout << "\n--- Vektor B=A;\n";
14
    Vektor B=A;
15
    cout << "--- A + B;\n";
16
    A + B;
17
    cout << "\n--- Vektor C=A+B\n";
18
    Vektor C=A+B;
19-
    
19+
20
    C.displayVektor();
21
    cout << "\n--- return 0;\n";
22-
    
22+
23
24
//VECTOR.H
25
26
#pragma once
27
28
class Vektor
29
{
30
private:
31
    int * iArray;
32
    int n;
33
    int ID;
34
    static int Nr;
35
public:
36
    Vektor();
37
    Vektor(int k);
38
    Vektor(Vektor &quelle);
39
    ~Vektor();
40
    void setiArray(int v[], int k);
41
    void displayVektor();
42
    Vektor operator + (Vektor OP2);
43
};
44
45
//VECTOR.CPP
46
47
#include <iostream>
48
#include "vector.h"
49
using namespace std;
50
51
int Vektor::Nr = 0;
52
53
Vektor::Vektor()
54
{
55
    iArray = NULL;
56
    Nr++;
57
    ID = Nr;
58
}
59
60
Vektor::Vektor(int k)
61
{
62
    iArray = new int[k];
63
    n = k;
64
    Nr++;
65
    ID = Nr;
66
    for (int i = 0; i < k; i++)
67
    {
68
        cout << i+1 << ". Vektorelement = ? ";
69
        cin >> iArray[i];
70
    }
71
}
72
73
Vektor::Vektor(Vektor &quelle)
74
{   
75
    iArray = new int[quelle.n];
76
    n = quelle.n;
77
    Nr++;
78
    ID = Nr;
79
    for (int i = 0; i < n; i++)
80
    {
81
        iArray[i] = quelle.iArray[i];
82
    }
83
    cout << "Kopierkonstruktor:\n"; displayVektor();
84
    quelle.displayVektor(); cout << endl;
85
}
86
87
void Vektor::displayVektor()
88
{
89
    if (iArray != NULL)
90
    {
91
        cout << "Vektor " << ID << ": " << iArray << " {";
92
        for (int i = 0; i < (n-1); i++)
93
            cout << iArray[i] << " ";
94
        cout << iArray[n-1] << "}";
95
    }
96
    cout << endl;
97
}
98
99
Vektor::~Vektor()
100
{
101
    cout << "Desktruktor; "; displayVektor(); cout << endl;
102
    delete[] iArray;
103
}
104
105
void Vektor::setiArray(int v[], int k)
106
{
107
    delete[] iArray;
108
    iArray = new int[k];
109
    n = k;
110
    for (int i = 0; i < k; i++)
111
    {
112
        iArray[i] = v[i];
113
    }
114
}
115
116
Vektor Vektor::operator + (Vektor OP2)
117
{
118
    Vektor temp;
119
    if (n >= 1 && n == OP2.n)
120
    {
121
        int * summe = new int[n];
122
        for (int i = 0; i < n; i++)
123
        {
124
            summe[i] = iArray[i] + OP2.iArray[i];
125
        }
126
        temp.setiArray(summe, n);
127
        delete[] summe;
128
    }
129
    cout << "Vektor Temp (in operator +): "; temp.displayVektor();
130
    cout << "Vektor OP1  (in operator +): "; displayVektor();
131
    cout << "Vektor OP2  (in operator +): "; OP2.displayVektor();
132
133
    return temp;
134
}