Advertisement
yaffar

Untitled

Mar 31st, 2020
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.76 KB | None | 0 0
  1. class Diag {
  2. public:
  3.     enum Exceptions{OVERINDEXED, NULLPART, DIFFERENT};
  4.  
  5.     Diag(){ }
  6.     Diag(int k): _v(k, 0) { }
  7.  
  8.     void reSize(int k) { _v.resize(k, 0); }
  9.  
  10.     int operator()(int i, int j) const;
  11.     int& operator()(int i, int j);
  12.  
  13.     friend Diag operator+ (const Diag& a, const Diag& b);
  14.     friend Diag operator* (const Diag& a, const Diag& b);
  15.     friend std::istream& operator>> (std::istream& s, Diag& a);
  16.     friend std::ostream& operator<< (std::ostream& s, const Diag& a);
  17. private:
  18.     std::vector<int> _v;
  19. };
  20.  
  21. ostream& operator<<(ostream& s, const Diag& a)
  22. {
  23.     for(unsigned int i=0; i<a._v.size(); ++i){
  24.         for(unsigned int j=0; j<a._v.size(); ++j)
  25.             s << setw(5) << a(i,j);
  26.         s << endl;
  27.     }
  28.     return s;
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement