Скачиваний:
18
Добавлен:
15.06.2014
Размер:
3.65 Кб
Скачать
яю=>340 4;O MDD5:B82=>9 @01>BK 65;0B5;L=> >3@0=8G820BL G8A;> >1J5:B>2. CABL, =0?@8<5@, @07@010BK205BAO :;0AA 4;O ?@8=B5@0. @8 MB>< 2 A8AB5<5 =5>1E>48<> ?@8 <=>65AB25 :;85=B>2 (7040=89, >1J5:B>2 :;0AA0 PrntJob) 8<5BL B>;L:> >48= >1J5:B (?@8=B5@, >1J5:B :;0AA0 Printer). -B> <>65B 1KBL 4>AB83=CB> 8=:0?AC;OF859 >1J5:B0 ?@8=B5@ 2 >4=C 87 DC=:F89. A5 :>=AB@C:B>@K :;0AA0 Printer 4>;6=K 1KBL 70:@KBK5 8 <>3CB 1KBL 2K720=K B>;L:> 87 >B:@KBKE <5B>4>2 :;0AA0 Printer 8;8 <5B>4>2 4@C65AB25==KE MB><C :;0AAC. @><5 B>3>, A>740205<K9 >1J5:B O2;O5BAO AB0B8G5A:8<, GB> 8A:;NG05B 2>7<>6=>ABL 53> ?>2B>@=>3> A>740=8O.



class PrntJob;       // ?@5420@8B5;L=>5 >1JO2;5=85 

class Printer

{ Printer(){}

  Printer(const Printer& obj){};

 public:

  void Job(PrntJob&);  //  DC=:F8O 2K2>40 7040=8O 

  friend Printer& Print();  //  DC=:F8O 2>72@0I05B AAK;:C

};



class PrntJob//  :;0AA 7040=85

{ string str;

 public:

  void get(const string str)  //  8=8F80;870F8O 7040=8O

  {this->str=str;}

  string& put(){return str;} // 2>72@0B AAK;:8 =0 B5:CI55 7040=85



};



void Printer::Job(PrntJob& obj)

{cout<<obj.put()<<endl;

}



Printer& Print()           

{ static Printer pr;  // AB0B8G5A:89 >1J5:B "?@8=B5@"

  return pr;    // 2>72@0B AAK;:8 =0 >1J5:B"?@8=B5@"

}



main()

{ PrntJob ob1,ob2;

  ob1.get("7040=85 1");

  ob2.get("7040=85 2");

  // cout<<&Print()<<endl;     // 2K>48BAO 04@5A >1J5:B0 ?@8=B5@

  Print().Job(ob1);

  // cout<<&Print()<<endl;

  Print().Job(ob2);

}



>6=> ?>ABC?8BL 8=0G5, A45;02 DC=:F8N Print AB0B8G5A:>9 G;5=><-DC=:F859 :;0AA0 Printer. -B> B0:65 8A:;NG05B =5>1E>48<>ABL 8A?>;L7>20=8O friend-<5E0=87<0 4;O DC=:F88 Print.



class Printer

{ Printer(){}

   Printer(const Printer& obj){};

 public:

   static Printer& Print();    // A>740=85 AB0B8G5A:>3> >1J5:B0 ?@8=B5@

   .   .   .

};