Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string.h>
- #include <string>
- #include <math.h>
- #include <stdlib.h>
- using namespace std;
- class MyString{
- private:
- char *str;
- public:
- MyString(const MyString &obcpy);
- MyString(){
- str = NULL;
- cout << "Defalt constructor.\n";
- }
- MyString(const char* c){
- int len = strlen(c);
- str = (char *)malloc(len * sizeof(char));
- str = new char[len];
- strcpy(str, c);
- cout << "Constructing ... " << c << '\n';
- }
- char* getStr(){
- return str;
- }
- ~MyString(){
- cout << "Distructing ... "<< (str == NULL ? "NULL" : str) << "\n";
- free(str);
- delete [] str;
- }
- MyString strCmp(MyString s1, MyString s2){
- if(strlen(s1.getStr()) > strlen(s2.getStr())) {
- return s1;
- }
- else return s2;
- }
- };
- MyString :: MyString(const MyString &obcpy){
- int len = strlen(obcpy.str);
- str = new char[len];
- strcpy(str, obcpy.str);
- strcat(str, "+");
- cout << "Copy Constructor ... " << str << '\n';
- }
- int main(){
- MyString ss1;
- MyString ss2("Fuad");
- MyString ss3("Nafiz");
- MyString ss4("axaxax");
- char * ret;
- ret = ss2.getStr();
- cout << ret << endl;
- ss4 = ss2.strCmp("Hafiz", "ab");
- cout << "Returned after compare ... " << ss4.getStr() << '\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement