Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- class str
- {
- private:
- char * _str;
- public:
- str(char * s):_str(new char[strlen(s)]) //конструктор копий
- {
- strcpy(_str,s);
- }
- str& operator=(const str& ob) // перегрузка оператора присваивания
- {
- this->_str = new char[strlen(ob._str)];
- strcpy(_str,ob._str);
- return *this;
- }
- char * operator()()// функтор возвращающий строку переданную в конструктор
- {
- return _str;
- }
- bool operator()(const char * s) { return strcmp(_str,s) == 0;}// предикат, сравнивает строку переданную в конструктор со строкой переданной в функтор
- };
- int main()
- { if (str("hello world")("hello world"))
- std::cout << "strings are IDENTICHNb|\n" ;
- else
- std::cout << "strings are RAZNb|E\n" ;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement