Advertisement
mostlabs

2.1/1

Nov 15th, 2020 (edited)
318
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.01 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3.  
  4. using namespace std;
  5.  
  6.  
  7. class computer {
  8. private:
  9.     string name;
  10.         int ram;
  11.     int harddisk;
  12. public:
  13.    
  14.     computer();
  15.     computer(const string&,const int, int);
  16.     ~computer();
  17.     computer(const computer&);
  18.     computer& operator=(computer com);
  19.     void info();
  20.  
  21.  
  22. };
  23.  
  24. void computer::info(){
  25.  
  26.    
  27.     string name;
  28.     int ram;
  29.     int harddisk;
  30.     int n;
  31.     cout << "Enter the mas size: " << endl;
  32.     cin >> n;
  33.     computer* mas = new computer[n];
  34.     for (int i = 0; i < n; i++)
  35.     {
  36.         cout << "Enter name: ";
  37.         cin >> name;
  38.         cout << "Enter ram: ";
  39.         cin >> ram;
  40.         cout << "Enter harddisk: ";
  41.         cin >> harddisk;
  42.         mas[i] = computer(name, ram, harddisk);
  43.         mas[i] = computer(mas[i]);
  44.  
  45.  
  46.     }
  47.  
  48.    
  49. }
  50. computer::~computer() {
  51.  
  52.     cout << "Destructor for object with values:" << endl;
  53.    
  54. }
  55. computer::computer():name("none"), ram(0), harddisk(0) {
  56.    
  57.     cout << "Constructor without params." << endl << "Name = " << name <<" " << "ram = " << ram <<"gb"<< " " << "harddisk= " << harddisk <<"gb"<< "." << endl;
  58.  
  59. }
  60. computer::computer(const string& name,const int ram, int harddisk) {
  61.  
  62.     this->name = name;
  63.     this->ram = ram;
  64.     this->harddisk = harddisk;
  65.    
  66.     cout << "Constructor with params." << endl << "Name=" << name << " " << "ram=" << ram << "gb" << " " << "harddisk=" << harddisk << "gb"<< endl;
  67. }  
  68. computer::computer(const computer& _computer)
  69. {
  70.     name = _computer.name;
  71.     ram = _computer.ram;
  72.     harddisk = _computer.harddisk;
  73.     cout << "Copy constructor." << endl << "Name = " << name  <<" "<< "ram = " << ram <<"gb"  <<" "<<" harddisk = " << harddisk << "gb" << "." << std::endl;
  74. }
  75. computer& computer::operator=(computer com) {
  76.  
  77.     this->name = com.name;
  78.     this->ram = com.ram;
  79.     this->harddisk = com.harddisk;
  80.     cout << "operator=" << " " << " name=" << name << " " << "ram=" << ram <<"gb" << " " << " harddisk=" << harddisk <<"gb" << endl;
  81.  
  82.     return *this;
  83.  
  84. }
  85.  
  86.  
  87. int main() {
  88.    
  89.    
  90.     computer b;
  91.     b.info();
  92.     b.~computer();
  93.     computer* c = new computer("hp", 10, 12);
  94.     delete c;
  95.  
  96.  
  97.    
  98.  
  99.    
  100.  
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement