使用C++完成MyString类小程序

题目描述
该问题需要实现一个MyString类。需要包含以下成员函数。
MyString(const char*) 将字符串构建为一个MyString实例
MyString.length() 返回字符串的长度
MyString.find(const char* find_str) 查询实例中是否含有find_str,如果含有,则返回首位置长度,不含则返回-1。
输入
第一行包含一个只有小写字母的字符串,表示需要将这个字符串构建为MyString实例。
第二行包含一个整数N,表示询问次数
之后N行,如果输入1,则返回字符串的长度。
如果输入2 str,则返回在实例中查询str的结果。其中str为只包含小写字母的字符串。
输出
对于每个询问,输出询问结果,结果占一行。
样例输入
hellomystring
4
1
2 hello
2 hollw
2 my
样例输出
13
0
-1
5


#include <iostream>
#include <string>
#include <string.h>

using namespace std;

class MyString
{
public:
    MyString(const char *str) {
        mystring.append(str);
    }
    int length() {
        return mystring.length();
    }
    int find(const char* find_str) {
        return mystring.find(find_str);
    }

private:
    string mystring;
};

int main()
{
    char str[64] = {0};
    int N, input;
    gets(str);
    MyString myStr(str);
    cin >> N;
    for(int i=0; i<N; i++) {
        scanf("%d", &input);
        if(input == 1) {
            cout << myStr.length() << endl;
        }
        else if(input == 2) {
            getchar();
            memset(str, 0, sizeof(str));
            gets(str);
            cout << myStr.find(str) << endl;
        }
        else {
            cout << "输入错误" << endl;
        }
    }
    return 0;
}