Advertisement
mrAnderson33

На зачет по ЭВМ второй курс осень

Dec 27th, 2016
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.08 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3.  
  4.  
  5. class str
  6. {
  7.        private:
  8.          char * _str;
  9.        public:
  10.          str(char * s):_str(new char[strlen(s)]) //конструктор копий
  11.         {
  12.             strcpy(_str,s);
  13.         }
  14.         str& operator=(const str& ob) // перегрузка оператора присваивания
  15.          {
  16.             this->_str = new char[strlen(ob._str)];
  17.             strcpy(_str,ob._str);
  18.  
  19.             return *this;
  20.         }
  21.          char * operator()()// функтор возвращающий строку переданную в конструктор
  22.          {
  23.             return _str;
  24.          }
  25.          bool operator()(const char * s) { return strcmp(_str,s) == 0;}// предикат, сравнивает строку переданную в конструктор со строкой переданной в функтор
  26.  
  27. };
  28.  
  29.  
  30.  
  31. int main()
  32. {   if (str("hello world")("hello world"))
  33.     std::cout << "strings are IDENTICHNb|\n" ;
  34.     else
  35.     std::cout << "strings are RAZNb|E\n" ;
  36.     return 0;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement