OOP / Лаб5
.pdf
|
|
Лабораторная работа №5 |
|
|
|
Задание: |
|
|
|
|
|
1. Реализовать нижеприведенные классы: |
|
|
|
||
class CInt |
|
class CFloat |
|
class CMas |
|
{ |
|
{ |
|
{ |
|
private: |
|
private: |
|
private: |
|
CInt (int); |
|
CFloat (float); |
|
CMas (int*, int); |
|
int value; |
|
float value; |
|
int value [10]; |
|
operator int (); |
|
operator float (); |
|
operator []; |
|
operator char* (); |
|
operator char* (); |
|
operator int (); |
|
|
|
|
|
//возвращает количество |
|
}; |
|
}; |
|
элементов |
|
|
|
|
|
|
|
CInt i; |
|
CFloat f; |
|
}; |
|
|
|
|
|
|
|
|
1 |
|
2 |
CMas m; |
3 |
|
|
|
|||
class CString |
4 |
class CDouble |
5 |
class CCharStr |
6 |
|
|
|
|||
{ |
|
{ |
|
{ |
|
private: |
|
private: |
|
private: |
|
CString (char*); |
|
CDouble (double); |
|
CCharStr (char*); |
|
string value; |
|
double value; |
|
operator int (); |
|
operator char* (); |
|
operator double () |
|
operator char* (); |
|
operator int (0; |
|
}; |
|
}; |
|
}; |
|
CDouble d; |
|
CCharStr cs; |
|
CString s; |
|
|
|
|
|
2. В реализованных классах перегрузить операторы и выполнить следующие действия:
1. |
cs (+ − * /) i |
2. |
d (+ − * /) f |
3. |
i (+ − * /) cs |
|
|
|
|
|
|
4. |
d (+ − * /) cs |
5. |
f (+ − * /) d |
6. |
s (+ − * /) i |
|
|
|
|
|
|
7. |
f (+ − * /) m |
8. |
f (+ − * /) s |
9. |
cs (+ − * /) m |
|
|
|
|
|
|
10. |
i (+ − * /) f |
11. |
d (+ − * /) i |
12. |
m (+ − * /)cs |
|
|
|
|
|
|
13. |
i (+ − * /) m |
14. |
f (+ − * /) cs |
15. |
cs (+ − * /) d |
|
|
|
|
|
|
16. |
m (+ − * /) d |
17. |
d (+ − * /) m |
18. |
d (+ − * /) i |
|
|
|
|
|
|
19. |
m (+ − * /) s |
20. |
s (+ − * /) cs |
21. |
m (+ − * /) i |
|
|
|
|
|
|
22. |
s (+ − * /) d |
23. |
cs (+ − * /) f |
24. |
i (+ − * /) s |
|
|
|
|
|
|