完成下面的题目:
(1)完成并测试下面的String类。
String f(String a,String b) { a[2] = 'x'; char c = b[3]; cout << "in f: " << a << ' ' << b << ' ' << c << '\n'; return b; } int main() { String x, y; cout << "Please enter two strings\n"; cin >> x >> y; cout << "input: " << x << ' ' << y << '\n'; String z = x; y = f(x,y); if (x ! = z) cout << "x corrupted!\n"; x[0] = '!'; if (x == z) cout << "write failed!\n"; cout << "exit: " << x << ' ' << y << ' ' << z << '\n'; }(2)写一个特别为不多于8个字符的字符串优化的String类。将它的执行与(1)的String,以及你所用的实现的标准库string版本做一些比较。有可能设计出一个串类,使之能将为很短的字符所做的优化与完全一致性的字符串组合到一起吗?